加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 格式化一个double而不是四舍五入

发布时间:2020-12-14 17:44:33 所属栏目:Java 来源:网络整理
导读:我需要格式化(而不是舍弃)一个双倍到2个小数位. 我试过: String s1 = "10.126";Double f1 = Double.parseDouble(s1);DecimalFormat df = new DecimalFormat(".00");System.out.println("f1"+df.format(f1)); 结果: 10.13 但是我需要输出为10.12 解决方法
我需要格式化(而不是舍弃)一个双倍到2个小数位.

我试过:

String s1 = "10.126";
Double f1 = Double.parseDouble(s1);
DecimalFormat df = new DecimalFormat(".00");
System.out.println("f1"+df.format(f1));

结果:

10.13

但是我需要输出为10.12

解决方法

调用 setRoundingMode适当设置 RoundingMode
String s1 = "10.126";
Double f1 = Double.parseDouble(s1);
DecimalFormat df = new DecimalFormat(".00");
df.setRoundingMode(RoundingMode.DOWN); // Note this extra step
System.out.println(df.format(f1));

产量

10.12

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读