在下面的程序中,結果是0.0
被認爲小於Double.MIN_VALUE
。爲什麼?爲什麼自動裝箱/取消裝箱在這裏失敗?
我們有一個解決方案(只與Doubles
工作,並使用compareTo
),我想明白爲什麼拆箱在這裏失敗。
import java.util.Date;
import java.util.Calendar;
import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
double max = 99999.9999;
double min = Double.MIN_VALUE;
Double test = 0.0;
System.out.println(max > test); // expect true; is true
System.out.println(test > min); // expect true; is false
}
}
打算添加一個鏈接到一個以前的問題,從@aioobe有一個很好的答案。國際海事組織太陽應該已經命名這個不斷更直觀的東西,但這艘船已經航行。 http://stackoverflow.com/questions/3884793/minimum-values-and-double-min-value-in-java – Perception