java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
除法运算时,无法整除,出现无限循环小数时,抛出异常.
解决方法: BigDecimal.ROUND_HALF_UP
设置除法的四舍五入
BigDecimal b1 = new BigDecimal(10000.0);
BigDecimal b2 = new BigDecimal(30.0);
BigDecimal divide1 = b1.divide(b2, BigDecimal.ROUND_HALF_UP);
// 保留2位小数
BigDecimal divide2 = b1.divide(b2, 2, BigDecimal.ROUND_HALF_UP);