Arithmetic:算术
Rounding necessary:需要舍入
System.out.println(new BigDecimal("1225.120").setScale(2));//不会出错 System.out.println(new BigDecimal("1225.121").setScale(2));//出错原因精度丢失问题,要指定舍入模式即可
setScale()需要指定舍入规则,不知道会因为精度丢失问题报错。
public BigDecimal setScale(int newScale, RoundingMode roundingMode) { return setScale(newScale, roundingMode.oldMode); }
本文探讨了在Java中使用BigDecimal处理数值时遇到的精度丢失问题,并解释了setScale方法的作用及如何正确设置舍入模式来避免错误。
4736

被折叠的 条评论
为什么被折叠?



