7.5.2 BigDecimal类

更新于 2026年10月10日 版权声明
7.5.2 BigDecimal类

BigDecimal表示任意精度的浮点数,提供算术、舍入、比较和格式转换等操作。BigDecimal的四则运算等方法与BigInteger类似,这里不一一介绍这些方法,详细信息请参考Java API文档。

由于精度问题,浮点数在计算机中的存储并不是精确的。如果需要进行不产生舍入误差的精确数字计算,需要使用 BigDecimal 类。浮点数直接比较有时可能会出错,应避免对浮点数进行比较,要对浮点数进行比较也可以使用BigDecimal类。本节重点介绍使用BigDecimal类解决对浮点数运算和比较的精度问题。

浮点数四则运算和比较精度问题举例:

图示(https://www.daowen.com)

从代码和运行结果可以看出,浮点数在运算过程中精度出现了问题,导致本应相等的结果不相等,可以使用BigDecimal解决,示例代码如下:

图示

图示

可见,进行浮点数运算,尤其是商业运算,要使用BigDecimal,避免出现错误。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)