今天在工作中遇到一个问题,double类型数字如何保留两位有效数字,百度了一下会有很多答案,然后自己就找了一段相对简单的一段,拿出来分享给大家:
将数字进行格式化,比如取2位小数,这是最常见的。Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化需要的样子。下面是一个例子:
[java] view plaincopyprint?
;
publicclassTestNumberFormat{
publicstaticvoidmain(String[]args){
doublepi=3.1415927; //圆周率
//取一位整数
(newDecimalFormat("0").format(pi)); //3
//取一位整数和两位小数
(newDecimalFormat("0.00").format(pi)); //3.14
//取两位整数和三位小数,整数不足部分以0填补。
(new DecimalFormat("00.000").format(pi));// 03.142
//取所有整数部分
(newDecimalFormat("#").format(pi)); //3
//以百分比方式计数,并取两位小数
(new DecimalFormat("#.##%").format(pi)); //314.16%
longc=299792458;//光速
//显示为科学计数法,并取五位小数
(newDecimalFormat("#.#####E0").format(c)); //2.99792E8
//显示为两位整数的科学计数法,并取四位小数
(newDecimalFormat("00.####E0").format(c)); //29.9792E7
//每三位以逗号进行分隔。
(newDecimalFormat(",###").format(c)); //299,792,458
//将格式嵌入文本
(newDecimalFormat("光速大小为每秒,###米。").format(c));
}
}