分割BigDecimal值时出错:java.lang.ArithmeticException:非终止十进制扩展;没有确切的可表示的小数结果

时间:2018-02-17 08:45:42

标签: java bigdecimal

我已经引用了this并对contactlist值进行了舍入,然后我也得到了上述错误。请找到下面提到的代码。提前致谢:

BigDecimal

2 个答案:

答案 0 :(得分:1)

答案在那篇文章中,并且多次说明:

a.divide(b, 8, RoundingMode.HALF_EVEN);

尝试使用此除法语句,(精度为8)。 你现在正在做的是划分两个大的小数,这会产生一个超大的十进制答案,而你无法控制精度。

答案 1 :(得分:0)

请注意,除法方法有自己的可选舍入模式参数:

BigDecimal result=val1.divide(val2, BigDecimal.ROUND_UP);