getCurrencyInstance();
System.out.println(\"Currency \" + p + \" is displayed as \" + nfCurrency.format(c));
//这里没有涉及相应的parse方法
}
public static void customNumberFormat() {
double x = 1000.0 / 3;
System.out.println(\"default output is \" + x);
patternPrint(\"###,###.##\", x);
patternPrint(\"####.##\", x);
patternPrint(\"####.00\", x);
patternPrint(\"####.0#\", x); [Page]
patternPrint(\"00000.##\", x);
patternPrint(\"$###,###.##\", x);
patternPrint(\"0.###E0\", x);
patternPrint(\"00.##%\", x);
double y = 23.0012;
System.out.println(\"default output is \" + y);
patternPrint(\"###,###.##\", y);
patternPrint(\"####.##\", y);
patternPrint(\"####.00\", y);
patternPrint(\"####.0#\", y);
patternPrint(\"00000.##\", y);
patternPrint(\"$###,###.##\", y);
patternPrint(\"0.###E0\", y);
patternPrint(\"00.##%\", y);
#p# #e#
}
public static void patternPrint(String pattern, double x) {
DecimalFormat df = new DecimalFormat(pattern);
System.out.println(\"output for pattern \" + pattern + \" is \" + df.format(x));
}
public static void defaultDateFormat(){
Date date = new Date();
System.out.println(\"simple date \" + date.toLocaleString());
DateFormat df = DateFormat.getDateTimeInstance();
System.out.println(df.format(date));
DateFormat dfLong = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
System.out.println(dfLong.format(date));
DateFormat dfMedium = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, [Page]
DateFormat.MEDIUM);
System.out.println(dfMedium.format(date));
DateFormat dfShort = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
System.out.println(dfShort.format(date));
}
public static void customDateFormat() {
Date date = new Date();
patternPrint(\"yyyy.MM.dd HH:mm:ss z\", date); //两个MM, dd会导致补零
patternPrint(\"yy年M月d日 HH时mm分\", date); //两个yy就显示为两位年份
patternPrint(\"EEE, MMM d, ’’yy\", date);
patternPrint(\"h:mm a\", date);
patternPrint(\"hh ’o’’clock’ a, zzzz\", date);
patternPrint(\"yyyyy.MMMMM.dd GGG hh:mm aaa\", date);
patternPrint(\"EEE, d MMM yyyy HH:mm:ss Z\", date);
patternPrint(\"yyMMddHHmmssZ\", date);
}
public static void patternPrint(String pattern, Date date){
SimpleDateFormat df = new SimpleDateFormat(pattern);
System.out.println(df.format(date));
}
}
输出:
Integer 123456 is displayed as 123,456
Double 882323.23523 is displayed as 882,323.235
Integer 123456 is displayed as 123,456
Double 882323.23523 is displayed as 882,323.235
Percent 0.528 is displayed as 53%
Currency 0.528 is displayed as ¥52.83
default output is 333.3333333333333
output for pattern ###,###.## is 333.33
output for pattern ####.## is 333.33 [Page]
output for pattern ####.00 is 333.33
output for pattern ####.0# is 333.33
output for pattern 00000.## is 00333.33
output for pattern $###,###.## is $333.33
output for pattern 0.###E0 is 3.333E2
output for pattern 00.##% is 33333.33%
default output is 23.0012
output for pattern ###,###.## is 23
output for pattern ####.## is 23
output for pattern ####.00 is 23.00
#p# #e#
output for pattern ####.0# is 23.0
output for pattern 00000.## is 00023
output for pattern $###,###.## is $23
output for pattern 0.###E0 is 2.3E1
output for pattern 00.##% is 2300.12%
simple date 2004-8-7 8:16:14
2004-8-7 8:16:14
2004年8月7日 上午08时16分14秒
2004-8-7 8:16:14
04-8-7 上午8:16
2004.08.07 08:16:14 GMT+08:00
04年8月7日 08时16分
星期六, 八月 7, ’04
8:16 上午
08 o’clock 上午, GMT+08:00
02004.八月.07 公元 08:16 上午
星期六, 7 八月 2004 08:16:14 +0800
040807081614+0800
java 日期格式详解
本文介绍了如何使用Java进行数字和日期的格式化操作,包括定制化的数字格式展示、默认及定制化的日期格式输出等。通过具体示例展示了不同格式模式下数值与日期的呈现效果。

被折叠的 条评论
为什么被折叠?



