Java DecimalFormat 用法

2019/7/24 17:42:41 人评论 次浏览 分类:学习教程

一:介绍

DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。DecimalFormat 包含一个模式 和一组符号

符号含义:

0 一个数字

一个数字,不包括 0

. 小数的分隔符的占位符
  , 分组分隔符的占位符
  ; 分隔格式。

  • 缺省负数前缀。
    % 乘以 100 和作为百分比显示
      ? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代替十进制分隔符。
      X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。
      例子:

    DecimalFormat df1 = new DecimalFormat("0.0");
      DecimalFormat df2 = new DecimalFormat("#.#");
      DecimalFormat df3 = new DecimalFormat("000.000");
      DecimalFormat df4 = new DecimalFormat("###.###");
      System.out.println(df1.format(12.34));
      System.out.println(df2.format(12.34));
      System.out.println(df3.format(12.34));
      System.out.println(df4.format(12.34));
      /**结果:
      12.3
      12.3
      012.340
         12.34
         */
    

二:用法

importjava.text.DecimalFormat;  
    
publicclassTestNumberFormat{  
    
  publicstaticvoidmain(String[]args){  
    doublepi=3.1415927; //圆周率  
    //取一位整数  
    System.out.println(newDecimalFormat("0").format(pi));   //3  
    //取一位整数和两位小数  
    System.out.println(newDecimalFormat("0.00").format(pi)); //3.14  
    //取两位整数和三位小数,整数不足部分以0填补。  
    System.out.println(new DecimalFormat("00.000").format(pi));// 03.142  
    //取所有整数部分  
    System.out.println(newDecimalFormat("#").format(pi));   //3  
    //以百分比方式计数,并取两位小数  
    System.out.println(new DecimalFormat("#.##%").format(pi)); //314.16%  
    
    longc=299792458;  //光速  
    //显示为科学计数法,并取五位小数  
    System.out.println(newDecimalFormat("#.#####E0").format(c)); //2.99792E8  
    //显示为两位整数的科学计数法,并取四位小数  
    System.out.println(newDecimalFormat("00.####E0").format(c)); //29.9792E7  
    //每三位以逗号进行分隔。  
    System.out.println(newDecimalFormat(",###").format(c));   //299,792,458  
    //将格式嵌入文本  
    System.out.println(newDecimalFormat("每秒###\米。").format(c));  
  }  
}  

DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如果位数不足则以 0 填充,# 表示只要有可能就把数字拉上这个位置。上面的例子包含了差不多所有的基本用法,如果你想了解更多,请参考 DecimalFormat 类的文档。

相关资讯

  • 那些我们不愿意承认的事

    很久没有见的老朋友,准确的说应该是很久没有见过的老师,一个比我大两岁的老师,我上初中的时候他从高中回来教我了一年。后来又回去上高中,我上高中的时候他上大学,现在我刚大学毕业他创办了公司。昨日一见依然如故,他还是热爱销售,而我却成了纯粹的技术人员。 看到他…

    2015/6/22 13:12:47

学习教程

共有访客发表了评论 网友评论

验证码: 看不清楚?

    立即查看