BigDecimal number=new BigDecimal(18.9045613);
System.out.print("RoundingMode四舍五入: " + number.setScale(2,RoundingMode.UP) ); //18.91
System.out.print("BigDecimal四舍五入: " + number.setScale(2,BigDecimal.ROUND_HALF_UP) );//18.90
为什么这两种四舍五入获得的值不一样?
public static final RoundingMode
远离零方向舍入的舍入模式。始终对非零舍弃部分前面的数字加 1。注意,此舍入模式始终不会减少计算值的绝对值.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。