java 数值计算保留两位、四位小数

川长思鸟来 2024-02-20 10:47 178阅读 0赞

在java中,通常我们需要进行数值运算和保留小数的需求。Java 中有提供DecimalFormat类,这个类就可以满足我们保留小数的要求了。

例如保留两位小数:

  1. DecimalFormat df = new DecimalFormat("0.00");
  2. double dou = 157989.7844545;
  3. System.out.println(df.format(dou));

运行结果为:

fd3de957f3864f189d4a6e85f781f1f8.png

如果四位小数的话,只需要在格式中变化下就好了。

  1. DecimalFormat df = new DecimalFormat("0.0000");
  2. double dou = 157989.78445945;
  3. System.out.println(df.format(dou));

注意:如果运算的时候是int 或者long类型的话,最好转成double类型,以免造成数据精度丢失,要不然可能给你返回零。

下面还有一些案例参考:

  1. double pi = 3.1415927;
  2. //取一位整数
  3. System.out.println(new DecimalFormat("0").format(pi));//3
  4. //取一位整数和两位小数
  5. System.out.println(new DecimalFormat("0.00").format(pi));//3.14
  6. //取两位整数和三位小数,整数不足部分以0填补。
  7. System.out.println(new DecimalFormat("00.000").format(pi));//03.142
  8. //取所有整数部分
  9. System.out.println(new DecimalFormat("#").format(pi));//3
  10. //以百分比方式计数,并取两位小数
  11. System.out.println(new DecimalFormat("#.##%").format(pi));//314.16%
  12. long c = 299792458;//光速
  13. //显示为科学计数法,并取五位小数
  14. System.out.println(new DecimalFormat("#.#####E0").format(c));//2.99792E8
  15. //显示为两位整数的科学计数法,并取四位小数
  16. System.out.println(new DecimalFormat("00.####E0").format(c));//29.9792E7
  17. //每三位以逗号进行分隔。
  18. System.out.println(new DecimalFormat(",###").format(c));//299,792,458
  19. //将格式嵌入文本
  20. System.out.println(new DecimalFormat("光速大小为每秒,###米。").format(c));//光速大小 为每秒299,792,458米。

供大家参考下。

发表评论

表情:
评论列表 (有 0 条评论,178人围观)

还没有评论,来说两句吧...

相关阅读