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