BigDecimal 精度保留RoundingMode

【BigDecimal 精度保留RoundingMode】BigDecimal的精度保留
RoundingMode的几种取值方式(demo中默认保留两位)

roundingMode RoundingMode 取值方式 demo
0 ROUND_UP 直接丢掉保留位数后面的,保留位数最后一个数加1。(负号不参与计算) 9.284->9.29;
-5.326->-5.33
1 ROUND_DOWN 直接丢掉保留位数后面的 9.284->9.28;
-5.326->-5.32
2 ROUND_CEILING 如果是正数用UP规则,负数用DOWN规则 9.284->9.29;
-5.326->-5.32
3 ROUND_FLOOR 如果是正数用DOWN规则,负数用UP规则 9.284->9.28;
-5.326->-5.33
4 ROUND_HALF_UP (>=5)四舍五入 9.235->9.24;
-5.326->-5.33
5 ROUND_HALF_DOWN (>5)五舍六入 9.235->9.23;
-5.326->5.33
6 ROUND_HALF_EVEN 四舍六入五留双(银行家舍入),如果是5的则看前一奇偶,奇加偶舍 9.235->9.24;
9.265->9.26;
7 ROUND_UNNECESSARY 断言请求的操作具有精确的结果,因此不需要舍入。如果对获得精确结果的操作指定此舍入模式,则抛出ArithmeticException 9.23->9.23; 9.231->ArithmeticException

    推荐阅读