1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
package
com.sohu.tv.m.servlet;
import
java.text.DecimalFormat;
/**
* just for simple Test
*
* @author liweihan
* @time 2016-12-13 10:47
*/
public
class
Test2 {
public
static
void
main(String[] args) {
/**
* DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。
* DecimalFormat 包含一个模式 和一组符号
* 符号含义:
0 一个数字
# 一个数字,不包括 0
. 小数的分隔符的占位符
, 分组分隔符的占位符
; 分隔格式。
- 缺省负数前缀。
% 乘以 100 和作为百分比显示
? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用
国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代
替十进制分隔符。
X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。
*/
Double pi =
3.1415927
;
//取一位整数
System.out.println(
new
DecimalFormat(
"0"
).format(pi));
//3
//取一位整数和两位小数
System.out.println(
new
DecimalFormat(
"0.00"
).format(pi));
//3.14
//取两位整数和三位小数,整数不足部分以0填补
System.out.println(
new
DecimalFormat(
"00.000"
).format(pi));
//03.142
//取所有整数部分
System.out.println(
new
DecimalFormat(
"#"
).format(pi));
//3
//以百分比方式计算,并取两位小数
System.out.println(
new
DecimalFormat(
"#.##%"
).format(pi));
//314.16%
long
c = 2999792458l;
//显示科学计数法,并取5位小数
System.out.println(
new
DecimalFormat(
"#.#####E0"
).format(c));
//2.99979E9
//显示两位整数的科学计数法,并取四位小数
System.out.println(
new
DecimalFormat(
"00.####E0"
).format(c));
//29.9979E8
//每三位以逗号进行分割
System.out.println(
new
DecimalFormat(
",###"
).format(c));
//2,999,792,458
//将格式嵌入文本
System.out.println(
new
DecimalFormat(
"大小为每秒,###米。"
).format(c));
//大小为每秒2,999,792,458米。
}
}
|
本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/1882176,如需转载请自行联系原作者