首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >BigDecimal setScale和round

BigDecimal setScale和round
EN

Stack Overflow用户
提问于 2010-10-02 06:29:08
回答 1查看 210.4K关注 0票数 160

这两个调用之间的区别是什么?(有吗?)

代码语言:javascript
复制
// 1.
new BigDecimal("3.53456").round(new MathContext(4, RoundingMode.HALF_UP));
// 2.
new BigDecimal("3.53456").setScale(4, RoundingMode.HALF_UP);
EN

回答 1

Stack Overflow用户

发布于 2011-06-28 00:20:08

这确实有很大的不同,你应该记住这一点。setScale确实设置了数字的小数位数,而round会将数字舍入到指定的位数,但它“从精确结果的最左边的数字开始”。因此,对于您的样本,结果是相同的,但请尝试0.0034。这是我在我的博客上的注释:

http://araklefeistel.blogspot.com/2011/06/javamathbigdecimal-difference-between.html

票数 54
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3843440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档