关闭

DecimalFormat类的使用体验

标签: JAVA
139人阅读 评论(0) 收藏 举报
分类:

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中的参数的使用多了一份理解。



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4591次
    • 积分:145
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:10篇
    • 译文:0篇
    • 评论:0条