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 df = new DecimalFormat();
 2           double data = 1234.56789;

 3           System.out.println("格式化之前的数字: " + data);
 4           String style = "0.0";//定义要显示的数字的格式
 5           df.applyPattern(style);// 将格式应用于格式化器
 6           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
 7           style = "00000.000 kg";//在格式后添加诸如单位等字符
 8           df.applyPattern(style);
 9           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
10           // 模式中的"#"表示如果该位存在字符,则显示字符,如果不存在,则不显示。
11           style = "##000.000 kg";
12           df.applyPattern(style);
13           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
14           // 模式中的"-"表示输出为负数,要放在最前面
15           style = "-000.000";
16           df.applyPattern(style);
17           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
18           // 模式中的","在数字中添加逗号,方便读数字
19           style = "-0,000.0#";
20           df.applyPattern(style);
21           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
22           // 模式中的"E"表示输出为指数,"E"之前的字符串是底数的格式,
23           // "E"之后的是字符串是指数的格式
24           style = "0.00E000";
25           df.applyPattern(style);
26           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
27           // 模式中的"%"表示乘以100并显示为百分数,要放在最后。
28           style = "0.00%";
29           df.applyPattern(style);
30           System.out.println("采用style: " + style + "格式化之后: " + df.format(data));
31           // 模式中的"\u2030"表示乘以1000并显示为千分数,要放在最后。
32           style = "0.00\u2030";
33           //在构造函数中设置数字格式
34           DecimalFormat df1 = new DecimalFormat(style);
35           //df.applyPattern(style);
36           System.out.println("采用style: " + style + "格式化之后: " + df1.format(data));

 
格式化之前的数字: 1234.56789
采用style: 0.0格式化之后: 1234.6
采用style: 00000.000 kg格式化之后: 01234.568 kg
采用style: ##000.000 kg格式化之后: 1234.568 kg
采用style: -000.000格式化之后: -1234.568
采用style: -0,000.0#格式化之后: -1,234.57
采用style: 0.00E000格式化之后: 1.23E003
采用style: 0.00%格式化之后: 123456.79%
采用style: 0.00‰格式化之后: 1234567.89‰


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于计算机专业的学生而言,参加各类比赛能够带来多方面的益处,具体包括但不限于以下几点: 技能提升: 参与比赛促使学生深入学习和掌握计算机领域的专业知识与技能,如编程语言、算法设计、软件工程、网络安全等。 比赛通常涉及实际问题的解决,有助于将理论知识应用于实践中,增强问题解决能力。 实践经验: 大多数比赛都要求参赛者设计并实现解决方案,这提供了宝贵的动手操作机会,有助于积累项目经验。 实践经验对于计算机专业的学生尤为重要,因为雇主往往更青睐有实际项目背景的候选人。 团队合作: 许多比赛鼓励团队协作,这有助于培养学生的团队精神、沟通技巧和领导能力。 团队合作还能促进学生之间的知识共享和思维碰撞,有助于形成更全面的解决方案。 职业发展: 获奖经历可以显著增强简历的吸引力,为求职或继续深造提供有力支持。 某些比赛可能直接与企业合作,提供实习、工作机会或奖学金,为学生的职业生涯打开更多门路。 网络拓展: 比赛是结识同行业人才的好机会,可以帮助学生建立行业联系,这对于未来的职业发展非常重要。 奖金与荣誉: 许多比赛提供奖金或奖品,这不仅能给予学生经济上的奖励,还能增强其成就感和自信心。 荣誉证书或奖状可以证明学生的成就,对个人品牌建设有积极作用。 创新与研究: 参加比赛可以激发学生的创新思维,推动科研项目的开展,有时甚至能促成学术论文的发表。 个人成长: 在准备和参加比赛的过程中,学生将面临压力与挑战,这有助于培养良好的心理素质和抗压能力。 自我挑战和克服困难的经历对个人成长有着深远的影响。 综上所述,参加计算机领域的比赛对于学生来说是一个全面发展的平台,不仅可以提升专业技能,还能增强团队协作、沟通、解决问题的能力,并为未来的职业生涯奠定坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值