以下是在格式化模式中使用字符。
编号 | 类 | 描述 |
---|---|---|
1 | 0 |
如果数字较小,则显示0。 |
2 | # |
显示忽略前导零的数字。 |
3 | . |
小数分隔符。 |
4 | , |
分组分隔符。 |
5 | E |
指数格式的尾数和指数分隔符。 |
6 | ; |
格式分隔符。 |
7 | - |
负数字前缀。 |
8 | % |
将乘以100后的数字显示为百分比。 |
9 | ? |
与1000相乘后显示数字为千位。 |
10 | X |
将字符标记为数字前缀/后缀。 |
11 | ' |
标记特殊字符的引号。 |
在这个例子中,我们根据不同的模式来格式化数字。
文件:IOTester.java -
import java.text.DecimalFormat; public class I18NTester { public static void main(String[] args) { String pattern = "###.###"; double number = 123456789.123; DecimalFormat numberFormat = new DecimalFormat(pattern); System.out.println(number); //pattern ###.### System.out.println(numberFormat.format(number)); //pattern ###.# numberFormat.applyPattern("###.#"); System.out.println(numberFormat.format(number)); //pattern ###,###.## numberFormat.applyPattern("###,###.##"); System.out.println(numberFormat.format(number)); number = 9.34; //pattern 000.### numberFormat.applyPattern("000.##"); System.out.println(numberFormat.format(number)); } }
执行上面示例代码,得到以下结果 -
1.23456789123E8 123456789.123 123456789.1 123,456,789.12 009.34