這是《寫給大忙人看的java核心技術》中的一道練習題。
1. 輸出最大正數值
System.out.println(Double.MAX_VALUE);
直接輸出包裝類Double的MAX_VALUE。
2. 輸出最小正數值
System.out.println(Double.MIN_VALUE);
使用Math.nextUp()方法也能輸出最小的正數
java.lang.Math.nextUp(double d) 返回浮點值在正無窮方向上相鄰的至d。這種方法在語義上等同到nextAfter(d, Double.POSITIVE_INFINITY);然而,
nextUp的實現可能會比其等效nextAfter調用運行速度更快。特殊情況:
-
如果參數為NaN,那么結果為NaN。
-
如果參數是正無窮大,其結果是正無窮大。
-
如果參數是零,結果是Double.MIN_VALUE
System.out.println(Math.nextUp(0.0));
3. 關於Integer.MIN_VALUE和Double.MIN_VALUE
Integer.MIN_VALUE自不必說,就是32位整型能存儲的最小數字:0x80000000,是一個負數。
但是Double.MIN_VALUE卻是一個正數,Double.MIN_VALUE表示的時64位雙精度值能表示的最小正數。
如果需要用到Double的負無窮,可以用Double.NEGATIVE_INFINITY。