引入DecimalFormat类进行数字格式化操作

it2022-05-08  9

引入语句:import java.text.DecimalFormat;首先创建DecimalFormat类对象,利用类对象调用Format()方法进行格式化操作。这里有两种方法:①.DecimalFormat  myFormat = new DecimalFormat();   myFormat.applyPattern(String pattern);   String str = myFormat.Format(double value);②.DecimalFormat  myFormat = new DecimalFormat(String pattern);   String str = myFormat.Format(double value);pattern格式说明:0 :如果该位存在数字则输出该数字,如果不存在则输出0;# :如果该位存在数字则输出该数字,不存在不做任何输出;. :小数分隔符;- :负号;,:分组分隔符;E :科学计数法中分隔位数和指数;% :放置在数字的前缀或后缀,将数字乘以100,以百分数输出;\u2030:放置在数字的前缀或后缀,将数字乘以1000,以千分数输出;\u00A4: 放置在数字的前缀或后缀,作为货币记号;' : 本符号为单引号,当上述特殊符号出现在数字中时,应为特殊符号添加单引号,系统会将该特殊符号当做普通符号处理;

eg:

 

[java]  view plain  copy   package Number;  import java.text.DecimalFormat;  public class IntFunction {      public static void MyDecimalFormat(String pattern, double value)      {          DecimalFormat myFormat = new DecimalFormat();          myFormat.applyPattern(pattern);          String str = myFormat.format(value);          System.out.println(str);      }      public static void main (String []args)      {          MyDecimalFormat("#,###.###", 123456.789);          MyDecimalFormat("00000000.000kg", 123456.789);          MyDecimalFormat("000000.000", 123.78);          MyDecimalFormat("#.#%", 0.789);          MyDecimalFormat("#.##", 123456.789);          MyDecimalFormat("#.00\u2030", 0.789);          MyDecimalFormat("#\u00A4", 1234);      }  }  /*输出结果: 123,456.789 00123456.789kg 000123.780 78.9% 123456.79 789.00‰ 1234¥ */  

此外还有:DecimalFormat  myFormat = new DecimalFormat();myFormat.setGroupingSize(3);//利用逗号进行分组时每个分组的大小,这里为3;myFormat.setGroupingUsed(false/true);//当为false时上述设置的分组大小无效,为true时才能进行分组;

 

eg:

 

[java]  view plain  copy   package Number;  import java.text.DecimalFormat;  public class IntFunction {      public static void MyDecimalFormat1(double value)      {          DecimalFormat myFormat = new DecimalFormat();          myFormat.setGroupingSize(3);          String str = myFormat.format(value);          System.out.println(str);      }      public static void MyDecimalFormat2(double value)      {          DecimalFormat myFormat = new DecimalFormat();          myFormat.setGroupingSize(3);          myFormat.setGroupingUsed(false);          String str = myFormat.format(value);          System.out.println(str);      }      public static void main (String []args)      {          MyDecimalFormat1(123456.789);          MyDecimalFormat2(123456.789);      }  }  /*输出结果: 123,456.789 123456.789 */  

转载于:https://www.cnblogs.com/langtianya/p/6111821.html


最新回复(0)