已知在使用精度计算的时候,float和double都会存在精度丢失现象,所以在计算货币使用的时候,我们通常采用BigDecimal进行精度计算,不过在使用的时候需要注意一下使用的方法,不然就算用了BigDecimal计算精度也会出现精度丢失现象。
推荐使用BigDecimal.valueOf(double val)或者new BigDecimal(String val),否者你使用new BigDecimal(1.34)或者BigDecimal.valueOf(0.99f)一样丢失精度
已知在使用精度计算的时候,float和double都会存在精度丢失现象,所以在计算货币使用的时候,我们通常采用BigDecimal进行精度计算,不过在使用的时候需要注意一下使用的方法,不然就算用了BigDecimal计算精度也会出现精度丢失现象。
推荐使用BigDecimal.valueOf(double val)或者new BigDecimal(String val),否者你使用new BigDecimal(1.34)或者BigDecimal.valueOf(0.99f)一样丢失精度