Java中输出小数点后几位

笔试时候,遇到让你写输出小数点后几位,当时很是头疼,下来后,查了查发现,没什么难的。网上有各种情况都讨论了(一般分为4种),在这里我着重讨论一下比较实用,比较简单,比较方便操作的几种:

 1 public class DotTest {
 2     public static void main(String[] args) {
 3         DecimalFormat df = new DecimalFormat("#.000");
 4         double d1 = 12.123456789;
 5         
 6         System.out.println(df.format(d1));
 7         System.out.printf("%.3f",d1);
 8         System.out.println();//为了分行显示
 9         System.out.println(String.format("%.3f", d1));//输出的是字符串
10     }
11 }

输出结果是:

12.123
12.123
12.123
有人会说第二种 System.out.printf("%.3f",d1);不是标准输出啊,我想说的是,在这里虽然是c中的输出形式,但是最起码它能实现小数位的约束,总比实现不了强得多吧。
所以综上,我推荐:
  • 输出是数字的话:使用DecimalFormat 类
  • 输出是字符串的话:使用String.format("%.3f", d1);

 

Over...

参考:

1. https://blog.csdn.net/shiyong1949/article/details/52641152

原文地址:https://www.cnblogs.com/gjmhome/p/11352720.html