在用Double进行计算处理时,经常出现精度缺失问题,我们应该使用BigDecimal来处理。
BigDecimal的构造方法中用来转换数据为BigDecimal有下面两种:
public BigDecimal(String val);
public BigDecimal(double val);
看到上面的构造方法我们应该会使用public BigDecimal(double val);来进行转换,但是这种方法在转换时仍然会出现精度缺失问题。
注意:
所以我们应该使用public BigDecimal(String val);来处理。
具体结果看如下代码: