在Java中Double.MIN_值是否大于零?
我在代码中发现了一个bug,它归结为将在Java中Double.MIN_值是否大于零?,java,double,Java,Double,我在代码中发现了一个bug,它归结为将Double(0.0)与Double.MIN\u值进行比较。基本上,以下返回false: System.out.println(0.0>Double.MIN_值); 这是怎么可能的呢?Double.MIN\u值是可以用Java Double表示的最小正非零值(请参阅处的JavaDoc)。根据,MIN\u值是: 保持最小值的常数 double型的正非零值 所以Double.MIN_值不是负值,它是接近Double可以达到零(而不是零)的正值。对于.NET程序
Double(0.0)
与Double.MIN\u值进行比较。基本上,以下返回false:
System.out.println(0.0>Double.MIN_值);
这是怎么可能的呢?Double.MIN\u值是可以用Java Double表示的最小正非零值(请参阅处的JavaDoc)。根据,MIN\u值是:
保持最小值的常数
double型的正非零值
所以Double.MIN_值不是负值,它是接近Double可以达到零(而不是零)的正值。对于.NET程序员来说:JavaDouble.MIN_值
在.NET中的等价物是Double.Epsilon
。double.MinValue
的.NET值是负最大(绝对值)(有限)表示值。