2011-04-18 46 views
22

我在我的代碼中發現了一個bug,比較Double(0.0)Double.MIN_VALUE。本質上,以下返回false:在Java中,Double.MIN_VALUE是否大於零?

System.out.println(0.0 > Double.MIN_VALUE); 

這怎麼可能?

+0

這裏它打印錯誤。 – 2011-04-18 21:23:58

+1

對於.NET程序員來說:.NET中Java'Double.MIN_VALUE'的等價物是'double.Epsilon'。 double.MinValue的.NET值是* negative最大*(以絕對值)(有限)可表示的值。 – 2013-04-02 15:21:44

回答

38

按照javadoc for Double.MIN_VALUE,MIN_VALUE是:

的常量保持最小 正非零double類型的值

所以Double.MIN_VALUE不是消極的,它是正值這是因爲關閉,因爲Double可以變爲零(不爲零)。

相關問題