DecimalFormat格式化數字


DecimalFormat格式化數字

DecimalFormat類也是Format的一個子類,主要作用是格式化數字。當然,在格式化數字時要比直接使用NumberFormat更加 方便,因為可以直接指定按用戶自定義的方式進行格式化操作,與SimpleDateFormat類似,如果要進行自定義格式化操作,則必須指定格式化操作 的模板,此模板如表11-13所示。

表11-13  DecimalFormat格式化模板

序號

 

 

 

1

0

數字

代表阿拉伯數字,每一個0表示一位阿拉伯數字,

如果該位不存在則顯示0

2

#

數字

代表阿拉伯數字,每一個#表示一位阿拉伯數字,

如果該位不存在則不顯示

3

.

數字

小數點分隔符或貨幣的小數分隔符

4

-

數字

代表負號

5

,

數字

分組分隔符

6

E

數字

分隔科學計數法中的尾數和指數

7

;

子模式邊界

分隔正數和負數子模式

8

%

前綴或后綴

數字乘以100並顯示為百分數

9

\u2030

前綴或后綴

乘以1000並顯示為千分數

10

¤

\u00A4

前綴或后綴

貨幣記號,由貨幣號替換。如果兩個同時出現,

則用國際貨幣符號替換;如果出現在某個模式中

,則使用貨幣小數分隔符,而不使用小數分隔符

11

,

前綴或后綴

用於在前綴或后綴中為特殊字符加引號,例如

 "'#'#" 將 123 格式化為 "#123"。要創建單引

號本身,則連續使用兩個單引號,例如"# o''clock"

 

示例:

 1         DecimalFormat format1=new DecimalFormat("000.00");
 2         System.out.println("Test.main()"+format1.format(12.345));//012.34 小數點前和后缺數補零,小數點后多數截取,6上進一
 3         
 4         DecimalFormat format2=new DecimalFormat("##.##");
 5         System.out.println("Test.main()"+format2.format(3.456));//3.46 小數點前和后缺數不補0,小數點后多數截取,6上進一
 6         
 7         DecimalFormat format3=new DecimalFormat("000,000,000.000" );
 8         System.out.println("Test.main()"+format3.format(43215696.4562286));//043,215,696.456 數字前的分隔符
 9         
10         DecimalFormat format4=new DecimalFormat("#.##%");
11         System.out.println("Test.main()"+format4.format(4.5));//450%
12         
13         DecimalFormat format5=new DecimalFormat("#.##\u2030");
14         System.out.println("Test.main()"+format5.format(0.0002));//千分號0.2‰
15         
16         DecimalFormat format6=new DecimalFormat("'這是我的錢$'##.##");//數字前后修飾符(修飾文字用''隔開)  這是我的錢$123.2
17         System.out.println("Test.main()"+format6.format(123.2));
18         
View Code

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com