浅谈BigDecimal类setScale()方法限定小数位数

浅谈BigDecimal类setScale()方法限定小数位数

BigDecimal是一个特别好用的Java.math类中的一个子类,由于BigDecimal有最多16位小数位,所以被用来进行大额数据的存储,但是有时候不需要这么多小数位的时候就需要用到setScale()方法。

例如:
BigDecimal sellDealRuleFee = settlementOrderDto.getSellDealRuleFee().setScale(2, BigDecimal.ROUND_FLOOR);
BigDecimal sellHandingFee = settlementOrderDto.getSellHandingFee().setScale(2, BigDecimal.ROUND_FLOOR);

我这里的2是小数位减少到2位
BigDecimal.ROUND_FLOOR字面意思是地板(向下),正数舍位向下,负数进位向下(最常用)
BigDecimal h = new BigDecimal(“1.325556”).setScale(2, BigDecimal.ROUND_FLOOR);
System.out.println(h); //1.32 如果是正数,相当于BigDecimal.ROUND_DOWN

你可能感兴趣的:(Java,Java)