BigDecimal算术计算,精度异常

最近用到了很多关于数据计算的,其中就有用到BigDecimal这个类,在此记录一下

这个类提供了数值的精确计算

其中最常使用的加减乘除 add、subtract、multiply、divide

但是中间计算的时候出现位数不对,引起了误差

public static void main(String[] args) {
        double a = 0.01;
        BigDecimal bd = new BigDecimal(a);
        System.out.println(bd);
}

但是运行的结果:0.01000000000000000020816681711721685132943093776702880859375

改为new BigDecimal(Double.toString(a))格式化字符串,就可以避免这种问题

猜你喜欢

转载自www.cnblogs.com/pngbow/p/9150266.html