DecimalFormat (Java 格式化数字 )

来源:互联网 发布:新天下无双挂机软件 编辑:程序博客网 时间:2024/05/17 08:30

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

符号含义:

0 一个数字

# 一个数字,不包括 0

. 小数的分隔符的占位符

, 分组分隔符的占位符

; 分隔格式。

- 缺省负数前缀。

% 乘以 100 和作为百分比显示

? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用

国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代

替十进制分隔符。

X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。

注:
“0.00”位数不够用0补
“#.##”自动去除末尾的0
前提是数字类型的

import java.text.DecimalFormat;  public class test {      public static void main(String[] args) {          double b;          b=100.45;          //保留一位小数,四舍五入          System.out.println(new DecimalFormat("0.0").format(b));  //100.5          //保留一位小数,四射无入          System.out.println(new DecimalFormat("#.#").format(b));  //100.5          b=11.0023;          //保留两位小数,四舍五入          System.out.println(new DecimalFormat("0.00").format(b));  //11.00          //保留两位小数,四射五入,但当末尾位0时,自动忽略          System.out.println(new DecimalFormat("#.##").format(b));  //11          b=20000.23456;          //格式化分隔数字          System.out.println(new DecimalFormat("#,##,###.####").format(b)); //20,000.2346          b=0.23365;          //按百分制输出,保留两位小数          System.out.println(new DecimalFormat("#.##%").format(b)); //23.36%          b=0.23366;          System.out.println(new DecimalFormat("#.##%").format(b)); //23.37%          b=123.455;          //将所有数字加上负号输出,保留两位小数          System.out.println(new DecimalFormat("-#.##").format(b)); //-123.45          b=-123.456;          System.out.println(new DecimalFormat("-#.##").format(b)); //--123.46          b=0.00235;          //按科学计数法输出,保留两位小数          System.out.println(new DecimalFormat("#.##E0").format(b)); //2.35E-3          b=0.00236;          System.out.println(new DecimalFormat("#.##E0").format(b)); //2.36E-3      }  }