今天在進行計算一個東西的時候,無心間發現,號稱已經解決了小數計算偏差的BigDecimal爲什麼會出現計算偏差呢:以下代碼java
public static void main(String[] args) { BigDecimal bd = new BigDecimal(1.03); BigDecimal bd1 = new BigDecimal("1.03"); System.out.println("bd="+bd); System.out.println("bd1="+bd1); }
輸出結果spa
bd=1.0300000000000000266453525910037569701671600341796875
bd1=1.03
因此,要是手動建立BigDecimal時,記得參數傳入字符串類型,不要傳小數類型,否則結果會很感人的code