DecimalFormat类的使用体验

Decimalformat 是Numberformat的子类,用于格式化十进制数字,DecimalFormat 包含一个模式 和一组符号 。

符号含义: 

0 一个数字 

# 一个数字,不包括 0 

. 小数的分隔符的占位符 

, 分组分隔符的占位符 

; 分隔格式。 

- 缺省负数前缀。 

% 乘以 100 和作为百分比显示 

? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用 

国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代 

替十进制分隔符。 

X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。 



我在这次学习中主要感受了format,applyformat两种方法进行格式设置的不同。

eg:

import java.text.DecimalFormat;


public class  DecimalFormatdemo {
static public  void simpleformat(String pattern,double value ){
DecimalFormat myformat1=new DecimalFormat(pattern);
String str=myformat1.format(value);
System.out.println(value+" "+pattern+" "+str);
}
static public void useapplyformat(String pattern,double value){
DecimalFormat myformat2=new DecimalFormat();
myformat2.applyPattern(pattern);
System.out.println(value+" "+pattern+" "+myformat2.format(value));

}
public static void main(String[] args) {
// TODO 自动生成的方法存根
simpleformat("###,###.###",123456.789);
simpleformat("00000000.###g",123456.789);
simpleformat("0000.00",123.78);
useapplyformat("#.###%",0.145);
useapplyformat("###.##",123456.789);
useapplyformat("0.00\u2030",0.145);
}

结果是:

123456.789 ###,###.### 123,456.789
123456.789 00000000.###g 00123456.789g
123.78 0000.00 0123.78
0.145 #.###% 14.5%
123456.789 ###.## 123456.79
0.145 0.00‰ 145.00‰

在这次练习中虽然这两个方法都可以实现格式化数字的操作,但是有所不同,simpleformat()是在实例化DecimalFormat对象的时候设置数字格式化模版,而useapplyPattern()是在实例化DecimalFormat对象后调用applypattern()方法设置数字化模版。相比于之前String.format()对format中的参数的使用多了一份理解。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值