java中使用BigDecimal准确计算精度(如金额),注意:使用float和double会造成精度丢失

最近在做银行的项目,在计算金额是碰到了一个奇怪的问题,使用float算出来的金额跟实际金额总会差那么几块钱。后面找到了原因是因为float造成的精度丢失的问题。特此记录。

具体使用float和double会造成精度丢失的原因:http://www.360doc.com/content/10/1228/10/4154133_81941359.shtml

解决方案:

使用java自带的BigDecimal类。具体见:http://blog.sina.com.cn/s/blog_6a0cd5e501011soa.html

你可能感兴趣的:(java中使用BigDecimal准确计算精度(如金额),注意:使用float和double会造成精度丢失)