最近用到了很多关于数据计算的,其中就有用到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))格式化字符串,就可以避免这种问题