java.lang.ArithmeticException: Non-terminating

当BigDecimal做除法计算(divide)时,若没有设置小数精度,当结果为无限循环小数时将抛出java.lang.ArithmeticException异常,示例代码如下:

new BigDecimal(10).divide(new BigDecimal(3));



解决方案:为除法设置小数精度和舍入方式,示例代码如下
new BigDecimal(10).divide(new BigDecimal(3), 2, RoundingMode.HALF_UP)



你可能感兴趣的:(java.lang.ArithmeticException: Non-terminating)