BigDecimal進行除法divide運算時,若是結果不整除,出現無限循環小數。則會拋出如下異常:java
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.編程
應用場景:一批中供客戶的單價是1000元/年,若是按月計算的話1000/12=83.3333333333....
解決之道:就是給divide設置精確的小數點divide(除數,2, BigDecimal.ROUND_HALF_EVEN)ide
保留2位小數,四捨五入!post