NumberFormat类与DecimalFormat类

  • Post author:
  • Post category:其他




一.NumberFormat类


可以使用NumberFormat类进行本地化的数字显示,它的主要功能是完成数字的格式化显示,存在于java.text包中


public

abstract

class NumberFormat

extends Format

import java.text.*;
public class NumberFormatDemo01{
	public static void main(String[] args){
		NumberFormat nf = null;	//声明一个NumberFormat对象
		nf = NumberFormat.getInstance();	//得到默认的数字格式化显示
		System.out.println("格式化之后的数字:"+nf.format(10000000));
	}	
}





import java.text.*;
public class NumberFormatDemo01{
	public static void main(String[] args){
		NumberFormat nf = null;	//声明一个NumberFormat对象
		nf = NumberFormat.getInstance();	//得到默认的数字格式化显示
		System.out.println("格式化之后的数字:"+nf.format(10000000));
		System.out.println("格式化之后的数字:"+nf.format(1000.3456));
	}	
}







二.DecimalFromat类


DecimalFormat类是NumberFormat类的子类,可以使用DecimalFormat指定格式化模版,也是存在于

java.text

包中


public class DecimalFormat

extends NumberFormat



格式化模板如下:




import java.text.DecimalFormat;
class FormatDemo{
	public void format1(String pattern,double value){
		DecimalFormat df = null;
		df = new DecimalFormat(pattern);	//传入模板,实例化对象
		String str = df.format(value);
		System.out.println("使用"+pattern+"格式化数字"+value+":"+str);
	}	
}
public class DecimalFormatDemo01{
	public static void main(String[] args){
		FormatDemo demo = new FormatDemo();	//格式化对象的类
		demo.format1("###,###.###",1112222.34567);
		demo.format1("000,000.000",1112222.34567);
		demo.format1("###,###.###¥",1112222.34567);
		demo.format1("##.###%",0.345678);
		demo.format1("00.###%",0.0345678);
		demo.format1("###.###\u2030",0.003456);
	}
}







NumberFormat相当于默认有个模板,而DecimalFormat可以接收自定义模版


参考资料:李兴华java视频



版权声明:本文为tomcmd原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。