DateFormat抽象类实现日期与字符串的转换

【需求】日期是可以计算的,而日期字符串无法计算。

由于DateFormat是抽象类,我们一般都是用的它的子类SimpleDateFormat。

【SimpleDateFormat构造方法】

1)SimpleDateFormat():默认无参构造。

1         //创建日期对象,即获取当前日期
2         Date date = new Date();
3         //实例化SimpleDateFormat类,以便调用方法
4         SimpleDateFormat sdf = new SimpleDateFormat();
5         //打印格式化后的日期
6         System.out.println(sdf.format(date));

输出结果:

1     18-2-15 下午4:59

2)SimpleDateFormat(String pattern) :用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。

1         // 创建日期对象,即获取当前日期
2         Date date = new Date();
3         // 用有参构造实例化SimpleDateFormat类,以便调用方法
4         // yyyy是年,MM是月,dd是日,HH是(24小时制)时,hh是(12小时制)时,mm是分,ss是秒
5         SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
6         // 打印格式化后的日期
7         System.out.println(sdf.format(date));

【链式编程写法,很精简】

1         System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));

注:这里用的是SimpleDateFormat的父类(抽象类)DateFormat的public String format(Date date)方法。

【字符串转日期】

1         //获取一个较规范的日期字符串
2         String ss = "2010-01-12 08:32:11";
3         // 用有参构造实例化SimpleDateFormat类,以便调用方法
4         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
5         //调用父类的parse(String pattern)方法解析字符串为日期对象
6         Date date = sdf.parse(ss);
7         //打印日期,若显示默认格式则正确
8         System.out.println(date);

 

posted @ 2018-02-15 17:19  Schiller_Hu  阅读(158)  评论(0编辑  收藏  举报