JAVA语言规范(官方文档)一

来源:互联网 发布:qt ros 显示界面编程 编辑:程序博客网 时间:2024/05/22 14:16

java.lang.Object
   java.text.Format
       java.text.NumberFormat
          java.text.DecimalFormat


DecimalFormatNumberFormat 的一个具体子类,用于格式化十进制数字。

public class DecimalFormat
extends NumberFormat

DecimalFormatNumberFormat 的一个具体子类,用于格式化十进制数字。该类设计有各种功能,使其能够解析和格式化任意语言环境中的数,包括对西方语言、阿拉伯语和印度语数字的支持。它还支持不同类型的数,包括整数 (123)、定点数 (123.4)、科学记数法表示的数 (1.23E4)、百分数 (12%) 和金额 ($123)。所有这些内容都可以本地化。

要获取具体语言环境的 NumberFormat(包括默认语言环境),可调用 NumberFormat 的某个工厂方法,如getInstance()。通常不直接调用 DecimalFormat 的构造方法,因为 NumberFormat 的工厂方法可能返回不同于DecimalFormat 的子类。如果需要自定义格式对象,可执行:

 NumberFormat f = NumberFormat.getInstance(loc); if (f instanceof DecimalFormat) {     ((DecimalFormat) f).setDecimalSeparatorAlwaysShown(true); }

简单的示例:

/** * @(#)DEMO.java *DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。 * * @author  * @version 1.00 2016/4/5 */import  java.text.DecimalFormat ;public class DEMO {     static public void customFormat(String pattern, double value ) {      DecimalFormat myFormatter = new DecimalFormat(pattern);      String output = myFormatter.format(value);      System.out.println(value + "  " + pattern + "  " + output);   }        static public void main(String[] args) {      customFormat("###,###.###", 123456.789);      customFormat("###.##", 123456.789);      customFormat("000000.000", 123.78);      customFormat("$###,###.###", 12345.67);    //对字符串改成5进制的数字String base5String = "230";int a = Integer.valueOf(base5String,10);//第二位10表示10进制,5则表示5进制  System.out.println (a);}}输出:--------------------Configuration: <Default>--------------------123456.789  ###,###.###  123,456.789123456.789  ###.##  123456.79123.78  000000.000  000123.78012345.67  $###,###.###  $12,345.67230Process completed.


0 0
原创粉丝点击