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