使用BigDecimal的进行除法运算时,
public BigDecimal divide(BigDecimal divisor)
当遇到结果为无限小数时,如1/3这种情况,如果不指定保留小数位数,就是出现异常:
java.lang.ArithmeticException:
Non-terminating decimal expansion;
no exact representable decimal result.
at java.math.BigDecimal.divide(BigDecimal.java:1693)
因此需要使用divide的重载方法:
public BigDecimal divide(BigDecimal divisor, int scale, RoundingMode roundingMode)
scale
为要保留的小数位数roundingMode
为小数保留方式
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。