[toc]
一 快速入门:保留两位小数的例子
@Test
public void df1(){
double d1 = 123.456;
DecimalFormat df = new DecimalFormat("0.00");
d1=Double.parseDouble(df.format(d1));
System.out.println("d1 = " + d1);
//输出为d1 = 123.46
}
二 占位符号介绍:
可以看的出来需要用占位符来确定格式,有一些常用的格式可供参考:
| 占位符 | 描述 |
|---|---|
| 0 | 数字占位符,位数不够时补零 |
| # | 数字占位符,位数不够时不补零 |
| . | 小数点分隔符的占位符 |
| , | 分组分隔符占位符 |
| #0 | 对数字取科学计数法 |
| % | 乘以100并显示为百分比 |
@Test
public void df1(){
double d1 = 123.456789;
System.out.println(new DecimalFormat("0").format(d1));//123
System.out.println(new DecimalFormat("00000.00").format(d1));//00123.46
System.out.println(new DecimalFormat("#").format(d1));//123
System.out.println(new DecimalFormat("####.##").format(d1));//123.46
System.out.println(new DecimalFormat("#.#####E0").format(d1));//1.23457E2
}
来一个官网的例子:

三 取整模式:
默认使用RoundingMode.HALF_EVEN,有以下模式:
