BigDecimal小结
# 40.BigDecimal小结
我们用了大量的篇幅来讲解BigDecimal,我们现在来简单用几句话总结下吧!
希望读者看到下面的话时能想到对应的知识点,并理解其原理,最后自己动手试试之前提到的Java代码
- Java提供的double 和 float类型是不准确的,对于需要精确计算的地方不要使用;
- 商业计算使用BigDecimal
- BigDecimal都是不可变的(immutable)的,在进行每一步运算时,都会产生一个新的对象,所以在做加减乘除运算时千万要保存操作后的值。
- 尽量使用参数类型为String的构造函数。
- 使用compareTo方法来比较数值,而不是equals
# 参考资料
为什么 0.1 + 0.2 = 0.3 - 面向信仰编程 (opens new window)
事故总结集锦-BigDecimal在金额计算中丢失精度导致的资损事故 10(一周一更) - 掘金 (opens new window)
求求你,不要再让浮点数背锅了 - 简书 (opens new window)
深入理解 BigDecimal - 知乎 (opens new window)
Java BigDecimal详解_jackiehff的博客-CSDN博客_java bigdecimal (opens new window)
为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较? (opens new window)
告警:线上慎用 BigDecimal ,坑的差点被开了... (opens new window)
上次更新: 2024/2/5 20:01:21