如何在不舍入的情况下截断大十进制数
2022-09-01 02:21:51
在我的代码中进行了一系列计算后,我有一个 with 值BigDecimal
0.01954
然后我需要将其乘以,我希望计算出的值是BigDecimal
100
1.95
我不希望执行任何向上或向下舍入,我只希望任何超过两个小数位的值被截断
我尝试将比例设置为2,但后来我说四舍五入是必要的。如何在不指定舍入的情况下设置比例?ArithmeticException
在我的代码中进行了一系列计算后,我有一个 with 值BigDecimal
0.01954
然后我需要将其乘以,我希望计算出的值是BigDecimal
100
1.95
我不希望执行任何向上或向下舍入,我只希望任何超过两个小数位的值被截断
我尝试将比例设置为2,但后来我说四舍五入是必要的。如何在不指定舍入的情况下设置比例?ArithmeticException
使用 RoundingMode.DOWN 或 RoundingMode.FLOOR。
BigDecimal newValue = myBigDecimal.setScale(2, RoundingMode.DOWN);
使用包含舍入模式的 setScale 覆盖:
value.setScale(2, RoundingMode.DOWN);