//数字格式化,利用DecimalFormat类格式化十进制数字
package myProject1; import java.text.DecimalFormat; public class class5 { //格式化字符 //0,表示一位阿拉伯数字。若该位不存在数字,则用0代替; //#,表示一位阿拉伯数字。若该位不存在数字,则不显示 //,逗号 分组分隔符 //E 分隔科学计数法中的尾数和指数 //% 放在数字的前缀或后缀,将数字乘以100,表示为百分数 //\u2030 放在数字的前缀或后缀,将数字乘以1000,表示为千分数 //\u00A4 放在数字的前缀或后缀,作为货币记号 //‘ 单引号 上述字符出现在数字中时,应为特殊符号添加单引号,系统会将此符号当成普通符号处理 // . 小数分隔符或货币小数分隔符 //- 负号
//数字格式化的两种方式
public static void main(String[] args) {
// TODO Auto-generated method stub
//方式一:通过DecimalFormat类的applyPattern(format)方法说明格式
DecimalFormat myFormat = new DecimalFormat();
myFormat.applyPattern("00,000.###");
String s = myFormat.format(3456.789);
System.out.println(s);//输出结果:03,456.789
//注意,整数部分或小数部分不可以同时使用#和0,
//否则虽然编译器不会报错,但运行时会抛出异常。
//例如 myFormat.applyPattern("00,0#0.###");就是错误的
// myFormat.applyPattern("00,000.#0#");也是错误的
//但可以写成 myFormat.applyPattern("00,000.###");
//方式二:在创建对象时,直接说明应用格式
DecimalFormat h = new DecimalFormat("00,000.###%");
String t = h.format(3456.789);
System.out.println(t);
//输出结果345,678.9%
}
}
|