Java.math下BigDecimal的除法保留小数位

想做一个除法保留两位数,隐约记得BigDecimal有一个divide()方法可以设置保留多少位,但是写出来发现已经过时不建议使用。

网上找一找发现都是大同小异,都还是说的过时方法:

b1.divide(b2,3,BigDecimal.ROUND_HALF_UP)

后来查找源码发现 bigdecimal更新把这些变量给提取出来封装成了一个枚举类,其实还是原来一样
在这里插入图片描述
所以新方法应该是:

返回一个BigDecimal ,其值是(this / divisor) ,其标为指定。 如果必须执行以生成与指定的规模的结果舍入,被施加指定的舍入模式

  public BigDecimal divide(BigDecimal divisor, int scale, RoundingMode roundingMode) {
        return divide(divisor, scale, roundingMode.oldMode);
    }

理解 BigDecimal 的 RoundingMode

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值