解決方式:使用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