BigDecimal实现精确计算原理
我们在金融项目中,计算金额最常用的数据类型是BigDecimal,它可以帮助我们实现对金额的精确计算。那它实现精确计算的原理是啥呢?
我们知道计算机中的浮点数,double,float存储的浮点数,可能不是一个准确的数,而是接近这个数的一个近似数。
比如:double a = 2.13。
实际:2.1300000000001
那BigDecimal如何实现精确计算呢?
其实原理也很简单,计算时,先成于10的N次方,先把小数都变成整数,整数存储是没有精度问题的,做完了相应的运算之后,再除以10的N次方。
版权声明:本文为jianliang_xu原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。