为什么这段代码不起作用?实际上,这只是一个大程序的一小部分。它必须将 Double.MIN_VALUE
与不同的值进行比较,它适用于除 0.
之外的所有值,为什么?谢谢!
double d = Double.MIN_VALUE;
if (0. > d) {
System.out.println("OK");
}
最佳答案
Double.MIN_VALUE
是 4.9E-324
。这不小于 0
。但它实际上不是 0
。
如果你打印
System.out.println(4.9E-324d > 0.);//this is true
从这个意义上说,
0.0000000000...0001 != 0. But it tends to 0
同样的方式 4.9E-324d != 0 但趋向于 0
关于java - 比较 Double.MIN_VALUE 和 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30665354/