遇到对数据的处理时,需要保留几位有效数字。
/**
- @param number 需要格式化的数
@param digits 小数点后保留的位数
@return
*/
public static String numberFormat(double number, int digits) {
NumberFormat numberFormat = NumberFormat.getInstance();
numberFormat.setMaximumFractionDigits(digits);
return numberFormat.format(number);
}
下面是NumberFormat的一些方法:
double f = 555111.22255;
java.text.NumberFormat nf=java.text.NumberFormat.getNumberInstance();
nf.setMinimumIntegerDigits(5);//整数显示最少位数不足前面补零
nf.setMaximumIntegerDigits(5);//整数显示最多位数超出前面截取
nf.setMinimumFractionDigits(3); //小数显示最少位数不足后面补零
nf.setMaximumFractionDigits(3); //小数显示最多位数超出四舍五入
nf.setGroupingUsed(false);//分组样式 默认为true 200,300.00
String dig=nf.format(f);
System.out.println(dig); //55111.223
nf =NumberFormat.getCurrencyInstance(); //货币 默认地区Local格式
System.out.println(nf.format(f)); //¥555,111.22
nf =nf.getPercentInstance(); //百分号
System.out.println(nf.format(f)); //55,511,122%