【发布时间】:2012-05-15 15:07:14
【问题描述】:
我以前使用过 BigDecimals,但不是很频繁,今天早上我正在做一些事情,但我不断收到以下异常:
Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion;
no exact representable decimal result.
at java.math.BigDecimal.divide(BigDecimal.java:1594)
我试图设置比例并使用四舍五入来消除这样的问题:
BigDecimal bd1 = new BigDecimal(1131).setScale(2,BigDecimal.ROUND_HALF_UP);
BigDecimal bd2 = new BigDecimal(365).setScale(2,BigDecimal.ROUND_HALF_UP);
BigDecimal bd3 = bd1.divide(bd2).setScale(2,BigDecimal.ROUND_HALF_UP);
System.out.println("result: " + bd3);
但是,我不断收到同样的异常。谁能告诉我我在哪里犯了错误?
【问题讨论】:
-
哪一行触发了异常?
-
@m0skit0
at java.math.BigDecimal.divide显示异常位置
标签: java exception bigdecimal