标签:
1、十进制数字格式化工具:DecimalFormat
DecimalFormat df = new DecimalFormat(); double data = 1203.405607809; System.out.println("格式化之前:" + data); String pattern = "0.0";// 1203.4 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // 可以在模式后加上自己想要的任何字符,比如单位 pattern = "00000000.000kg";// 00001203.406kg df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // #表示如果存在就显示字符,如果不存在就不显示,只能用在模式的两头 pattern = "##000.000kg";// 1203.406kg df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // -表示输出为负数,必须放在最前面 pattern = "-000.000";// -1203.406 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // ,是分组分隔符 :输出结果12,03.41 pattern = "-0,00.0#";// -12,03.41 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // E表示输出为指数,”E“之前的字符串是底数的格式,之后的是指数的格式。 pattern = "0.00E000";// 1.20E003 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // %表示乘以100并显示为百分数,要放在最后 pattern = "0.00%";// 120340.56% df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // "\u2030"表示乘以1000并显示为千分数,要放在最后 pattern = "0.00\u2030";// 203405.61‰ df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // "\u00A4"货币符号,要放在两端*****1203.41¥ pattern = "0.00\u00A4";// 1203.41¥ df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // ‘用于在前缀或或后缀中为特殊字符加引号,要创建单引号本身,请连续使用两个单引号:"# o‘‘clock"。 pattern = "‘#‘#";// #1203 // pattern = "‘#‘" ;//#1203 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); pattern = "# o‘‘clock";// 1203 o‘clock df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data)); // ‘‘放在中间或后面单引号就显示在最后,放在最前面单引号就显示在最前 // pattern = "# o‘‘clock.000" ;//1203.406 o‘clock // pattern = "# .000o‘‘clock";//1203.406 o‘clock // pattern = "# .000‘‘";//1203.406 ‘ // pattern = "# .‘‘000";//1203.406 ‘ pattern = "‘‘# .000";// ‘1203.406 df.applyPattern(pattern); System.out.println("采用" + pattern + "模式格式化后:" + df.format(data));
结果为:
格式化之前:1203.405607809 采用0.0模式格式化后:1203.4 采用00000000.000kg模式格式化后:00001203.406kg 采用##000.000kg模式格式化后:1203.406kg 采用-000.000模式格式化后:-1203.406 采用-0,00.0#模式格式化后:-12,03.41 采用0.00E000模式格式化后:1.20E003 采用0.00%模式格式化后:120340.56% 采用0.00‰模式格式化后:1203405.61‰ 采用0.00¤模式格式化后:1203.41¥ 采用‘#‘#模式格式化后:#1203 采用# o‘‘clock模式格式化后:1203 o‘clock 采用‘‘# .000模式格式化后:‘1203.406
2、日期格式化工具:SimpleDateFormat
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm"); SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString() SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E "); SimpleDateFormat myFmt4=new SimpleDateFormat( "一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区"); Date now=new Date(); System.out.println(myFmt.format(now)); System.out.println(myFmt1.format(now)); System.out.println(myFmt2.format(now)); System.out.println(myFmt3.format(now)); System.out.println(myFmt4.format(now)); System.out.println(now.toGMTString()); System.out.println(now.toLocaleString()); System.out.println(now.toString());
结果为:
2015年07月01日 14时13分22秒 15/07/01 14:13 2015-07-01 14:13:22 2015年07月01日 14时13分22秒 星期三 一年中的第 182 天 一年中第27个星期 一月中第1个星期 在一天中14时 CST时区 1 Jul 2015 06:13:22 GMT 2015-7-1 14:13:22 Wed Jul 01 14:13:22 CST 2015
3、类似于键值对:ChoiceFormat
double[] limit = { 0, 1, 2, 3 }; String[] format = { "hello0", "hello1", "hello2", "hello3" }; ChoiceFormat cf = new ChoiceFormat(limit, format); for (int i = 0; i < 4; ++i) { System.out.println(cf.format(i)); }
结果为:
hello0 hello1 hello2 hello3
标签:
原文地址:http://www.cnblogs.com/gyzboy/p/4613108.html