DecimalFormat用法

来源:互联网 发布:巴塞尔协议 数据要求 编辑:程序博客网 时间:2024/06/05 16:08

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("###.###");        DecimalFormat df5=new DecimalFormat("#.000");        DecimalFormat df6 = new DecimalFormat("#.##");        System.out.println("-----------结果:");        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));        System.out.println(df5.format(12.34));        System.out.println(df6.format(12.34));        DecimalFormat df7=new DecimalFormat("0.0##");        System.out.println(df7.format(111));-----------结果:12.312.3012.34012.3412.34012.34111.0
符号含义: 符号  位置  本地化?    含义0   数字  是   阿拉伯数字#   数字字 是   阿拉伯数字,如果不存在则显示为空.   数字  是   小数分隔符或货币小数分隔符-   数字  是   减号,   数字  是   分组分隔符E   数字  是   分隔科学计数法中的尾数和指数。在前缀或后缀中无需加引号。;   子模式边界   是   分隔正数和负数子模式%   前缀或后缀   是   乘以 100 并显示为百分数/u2030  前缀或后缀   是   乘以 1000 并显示为千分数¤(/u00A4)   前缀或后缀   否   货币记号,由货币符号替换。如果两个同时出现,则用国际货币符号替换。如果出现在某个模式中,则使用货币小数分隔符,而不使用小数分隔符。'   前缀或后缀   否   用于在前缀或或后缀中为特殊字符加引号,例如 "'#'#"123 格式化为 "#123"。要创建单引号本身,请连续使用两个单引号:"# o''clock"

总结

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

原创粉丝点击