Java四舍五入时保留指定小数位数

2019-02-20 00:45:22来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

方式一:

1 double f = 3.1516;
2 BigDecimal b = new BigDecimal(f);
3 double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();  
输出结果f1为 3.15;

源码解读:
  public BigDecimal setScale(int newScale, int roundingMode) //int newScale 为小数点后保留的位数, int roundingMode 为变量进行取舍的方式;
  BigDecimal.ROUND_HALF_UP 属性含义为为四舍五入

方式二:

String format = new DecimalFormat("#.0000").format(3.1415926);

System.out.println(format);
输出结果为 3.1416
解读:
  #.00 表示两位小数 #.0000四位小数 以此类推…

方式三:

1 double num = 3.1415926;
2 String result = String.format("%.4f", num);
3 System.out.println(result);
输出结果为:3.1416
解读:
  %.2f 中 %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。

方式四:

1 double num = Math.round(5.2544555 * 100) * 0.01d;
2 System.out.println(num);
输出结果为:5.25
解读:
  最后乘积的0.01d表示小数点后保留的位数(四舍五入),0.0001 为小数点后保留4位,以此类推......

完毕!!!


原文链接:https://www.cnblogs.com/routine/p/10392463.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:认识RabbitMQ交换机模型

下一篇:Java 集合类Hashmap