java.lang.ArithmeticException: Rounding necessary

场景:

        使用BigDecimal计算并且使用setSclae保留小数时,比如0.003.setScale(2)就会报错

java.lang.ArithmeticException: Rounding necessary

分析:

        当保留的小数位数小于当前小数位数就必须要要指出保留方式,比如四舍五入,向上向下取整,

解决·:

        改为setScale(2,2) 第二个参数是roundingMode保留方式,jdk版本不同可能会有不一样的地方,但是知道这个东西就可以具体模式可以网上了解

roundingMode:
ROUND_UP = 0 向外取整模式 
ROUND_DOWN = 1 向内取整模式 
ROUND_CEILING = 2 向上取整模式 
ROUND_FLOOR = 3 向下取整模式
ROUND_HALF_UP = 4 四舍五入模式 
ROUND_HALF_DOWN = 5 五舍六入模式 
ROUND_HALF_EVEN = 6 舍入模式
ROUND_UNNECESSARY = 7 银行家舍入模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wrx繁星点点

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值