我已经写了这一小段代码:BIGDECIMAL抛出异常
BigDecimal nummer = new BigDecimal("8340337220.0");
BigDecimal denominator = new BigDecimal("17.O");
BigDecimal result = nummer.divide(denominator);
System.out.println(result);
在Eclipse中运行它后,它给了我:
Exception in thread "main" java.lang.NumberFormatException
at java.math.BigDecimal.<init>(BigDecimal.java:459)
at java.math.BigDecimal.<init>(BigDecimal.java:728)
at main.main(main.java:10)
有人能帮助我吗?
谢谢你,是我不好。现在我得到这个:线程“main”java.lang.ArithmeticException中的异常:非终止十进制扩展;没有确切的可表示的小数结果。 – user1480139 2013-04-29 18:13:38
解决,需要一个规模和舍入模式:)谢谢 – user1480139 2013-04-29 18:16:31
BigDecimals是任意精度,但不是无限的精度。您需要使用采用整数比例和“RoundingMode”的“div”方法。 – rgettman 2013-04-29 18:17:02