当我们用浮点数的时候,肯定会出现精度丢失问题,直接上解决办法吧
直接用BigDecimal就可以解决了,之前找了好多的解决方法,我都感觉好麻烦
public static void main(String[] args) {
double b1 = 0.1d;
double b2 = 0.2d;
double b3 = 0.3d;
System.out.println("精度丢失:"+(b1 + b2 + b3));
BigDecimal b4 = new BigDecimal(String.valueOf(b1));
BigDecimal b5 = new BigDecimal(String.valueOf(b2));
BigDecimal b6 = new BigDecimal(String.valueOf(b3));
System.out.println("BigDecimal:" + (b4.add(b5).add(b6)));
}