Java中DecimalFormat详解

DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。

DecimalFormat 包含一个模式 和一组符号 
每个符号含义: 
0 一个数字 
# 一个数字,不包括 0 
. 小数的分隔符的占位符 

, 分组分隔符的占位符 

; 分隔格式。 

- 缺省负数前缀。 

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

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

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

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(new DecimalFormat("##.###").format(pi));// 3.142  
//取所有整数部分  
System.out.println(newDecimalFormat("#").format(pi));   //3  
//以百分比方式计数,并取两位小数  

System.out.println(new DecimalFormat("#.##%").format(pi)); //314.16%  

long c=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  
DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如果位数不足则以 0 填充,# 数字存在就写不存在不写

猜你喜欢

转载自blog.csdn.net/xxdw1992/article/details/81357507