避免使用BigDecimal(double)
Posted dingwen_blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了避免使用BigDecimal(double)相关的知识,希望对你有一定的参考价值。
文章目录
BigDecimal(double) 存在精度损失风险,在精确计算或值比较的场景中可能会导致业务逻辑异常。
// BigDecimal 反例
BigDecimal bigDecimal = new BigDecimal(0.11D);
// BigDecimal 正例
BigDecimal bigDecimal1 = bigDecimal.valueOf(0.11D);
以上是关于避免使用BigDecimal(double)的主要内容,如果未能解决你的问题,请参考以下文章
new BigDecimal(0.01) 与 new BigDecimal(String.valueOf(0.01))的区别 (转)
应该将 xs:double 转换为 xs:decimal 实现为 BigDecimal.valueOf(double) 还是 new BigDecimal(double)?