DateFormat类(abstract):
由于DateFormat是一个抽象类,不能通过new的方式来获取对象,只能通过内部的静态工厂方法来获取格式化日期对象
DateFormat常用的静态工厂方法有以下三种:
一、通过getDateInstance()
1.DateFormat.getDateInstance()
Date date = new Date();
DateFormat df = DateFormat.getDateInstance();
System.out.println(df.format(date));
结果:
2017-4-17
2.DateFormat.getDateInstance(DateFormat.FULL)
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println(df.format(date));
结果:
2017年4月17日 星期一
3.DateFormat.getDateInstance(DateFormat.LONG)
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);
System.out.println(df.format(date));
结果:
2017年4月17日
4.DateFormat.getDateInstance(DateFormat.MEDIUM) 效果和空参数的相同(Date)
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
System.out.println(df.format(date));
结果:
2017-4-17
5.DateFormat.getDateInstance(DateFormat.SHORT)
Date date = new Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
System.out.println(df.format(date));
结果:
17-4-17
二、通过getTimeInstance()
6.DateFormat.getTimeInstance()
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance();
System.out.println(df.format(date));
结果:
19:02:08
7.DateFormat.getTimeInstance(DateFormat.FULL)
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.FULL);
System.out.println(df.format(date));
结果:
下午07时22分21秒 CST
8.DateFormat.getTimeInstance(DateFormat.LONG)
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.LONG);
System.out.println(df.format(date));
结果:
下午07时23分54秒
9.DateFormat.getTimeInstance(DateFormat.MEDIUM) 效果和空参数的相同(Time)
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.MEDIUM);
System.out.println(df.format(date));
结果:
19:25:28
10.DateFormat.getTimeInstance(DateFormat.SHORT)
Date date = new Date();
DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT);
System.out.println(df.format(date));
结果:
下午7:26
三、通过getDateTimeInstance()
11.DateFormat.getDateTimeInstance()
Date date = new Date();
DateFormat df = DateFormat.getDateTimeInstance();
System.out.println(df.format(date));
结果:
2017-4-17 19:38:23
12.DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL)
Date date = new Date();
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL);
System.out.println(df.format(date));
结果:
2017年4月17日 星期一 下午07时40分08秒 CST
13.DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.MEDIUM)
Date date = new Date();
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.MEDIUM);
System.out.println(df.format(date));
结果:
2017年4月17日 19:42:10
注:带参数的getDateTimeInstance方法的组合方式就不再一一列举,只在下面对FULL,LONG,MEDIUM,SHORT四个常量做一下总结。
总结:
Date对应的日期格式:
DateFormat.FULL ------------------2017年4月17日 星期一
DateFormat.LONG -----------------2017年4月17日
DateFormat.MEDIUM--------------2017-4-17(默认)
DateFormat.SHORT ---------------17-4-17
Time对应的日期格式:
DateFormat.FULL-------------------下午07时22分21秒 CST
DateFormat.LONG------------------下午07时23分54秒
DateFormat.MEDIUM---------------19:25:28(默认)
DateFormat.SHORT-----------------下午7:26
关注我的微信公众号(曲健磊的个人随笔),观看更多精彩内容: