发现了一个误区,java Double 的最小值 Double.MIN_VALUE 是最小的非负正数,而不是最小的负数,
若要得到最小的负数,则要写成 -Double.MAX_VALUE, 而 Integer 的最大最小值则没这个问题。
例如下面代码:
public class HelloWorld {
public static void main(String[] args) {
double a = 0;
System.out.println(a > Integer.MIN_VALUE);
System.out.println(a > Double.MIN_VALUE);
}
}
输出:
true
false