Java使用float、double進行運算丟失精度問題

解決方式:使用bigDecimal。
例如:

public void testBig(){
        System.out.println(0.11+0.22);//非精確的輸出
        BigDecimal bigDecimal1 = new BigDecimal(Double.toString(0.11));
        BigDecimal bigDecimal2 = new BigDecimal(Double.toString(0.22));
        System.out.println(bigDecimal1.add(bigDecimal2));//精確的輸出
    }

輸出結果:
 0.33000000001
 0.33

參考博客: https://www.cnblogs.com/cblogs/p/double-precision.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章