This question already has answers here:
Java Math.cos(Math.toRadians(<angle>)) returns weird values
                                
                                    (4个答案)
                                
                        
                6年前关闭。
            
        

我发布此问题是因为我尝试在Stack Overflow中搜索类似的问题,但找不到一个问题(如果有,请通过链接提供给我)。

根据基本三角函数,90 degrees的余弦为0。但是,似乎Java中不是这种情况(正弦函数和其他三角函数也是如此吗?)。我对此感到非常困惑,希望有人能为我提供一个易于理解的解释。谢谢。

public static void main ( String args [] ) {
    double radians = Math.toRadians ( 90 );
    System.out.println ( Math.cos ( radians ) );
}


我应该得到0,但是运行此代码时得到的却是6.123233995736766E-17

最佳答案

6.123233995736766E-17可能会尽可能接近双倍...达到0 ...

有关更多信息,请参见Comparing a double against zero

07-26 02:58