您的位置:首页 > 编程语言 > Java开发

BigDecimal除法运算出现java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result的解决办法

2016-10-23 20:52 411 查看

BigDecimal除法运算出现java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result的解决办法

  今天在使用两个BigDecimal类型的数字做除法运算时,出现了一个如下的异常信息:

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


  上网查了一下这个异常的,找到了原因所在:通过BigDecimal的divide方法进行除法时当不整除,出现无限循环小数时,就会抛异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
  解决的办法就是给divide方法设置精确的小数点,如:divide(xxxxx,2)或者divide(BigDecimal.valueOf(365),0,BigDecimal.ROUND_UP)。

原文地址:http://www.cnblogs.com/xdp-gacl/p/4000450.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐