1、錯誤原因
在對Double類型的數據進行計算操作,將結果轉化爲BigDecimal時拋出了NumberFormatException。
Infinite 、 NaN是double類型的常量:無窮大、非數。結果類型轉換在構造BigDecimal對象時,構造方法中傳入的Double類型爲無窮大或非數字時會拋出NumberFormatException異常。
2、概念補充
-
任意整數(byte、short、int、long皆可)除以整數0結果爲ArithmeticException;
-
0除以浮點0結果爲NAN,細分的話包括以下三種情況:
(1)0/0.0
(2)0.0/0.0
(3)0.0/0
情況(3)雖然除的是個整數0,但在運算過程中發生了類型轉化變成了浮點0;
-
任意數(八大基本類型皆可)除以浮點0結果爲Infinity/-Infinity。
在java中浮點數0並非一個準確值,而是一個無限接近0的數。