Java 踩坑记

1、BigDecimal 进行除法运算,保留精度时,会报错:

Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.

解决办法:

new BigDecimal(10).divide(new BigDecimal(3)).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();

改为

new BigDecimal(10).divide(new BigDecimal(3), 2, BigDecimal.ROUND_HALF_UP).doubleValue();
发布了82 篇原创文章 · 获赞 13 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/magic_kid_2010/article/details/103816738