Non-terminating decimal expansion; no exact representable decimal result异常处理

来源:互联网 发布:linux服务器开发 epub 编辑:程序博客网 时间:2024/06/06 19:50

错误:

今天在使用BigDecimal的时候出现一个错误:

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
原因:

通过BigDecimal的divide方法进行除法时当不整除,出现无限循环小数时,就会抛这个异常。
解决方法:

使用方法divide(BigDecimal divisor, int scale, RoundingMode roundingMode)

指定精度:scale, 舍入模式:roundingMode
来指定除法之后保留小数位数,这样就避免出现无限循环。

0 0
原创粉丝点击