正确的使用方式:
使用字符串调用BigDecimal构造函数或者采用valueOf,但是不要直接将数字作为构造函数参数。
BigDecimal correctWay1 = new BigDecimal("0.1");
BigDecimal correctWay2 = BigDecimal.valueOf(0.1);
错误的使用方式
BigDecimal wrongWay = new BigDecimal(0.1);
原因:采用上述构造方式,0.1是当成double传入的,double做科学计算的时候精度是有问题的
两种方式使用对比图