概述
该类可以实现日期和文本之间的转化,即Date对象和String对象的转化。
--格式化:按指定格式,从Date对象转化为String对象。
--解 析:按指定格式,从String对象转化为Date对象。
构造方法
DateFormat为抽象类,一般使用其子类SimpleDateFormat。该类需要一个模式来指定格式化或解析的标准。构造方法为:
public SimpleDateFormat(String pattern)
参数pattern是一个字符串,表示日期时间的自定义格式。格式规则为:
y—年
M—月
d—日
H—时
m—分
s—秒
例:DateFormat df=new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
常用方法
- `public String format(Date date)`:将Date对象格式化为字符串。
- `public Date parse(String source)`:将字符串解析为Date对象。类要加Exception。
例:
Date d=new Date();
DateFormat df=new SimpleDateFormat(“yyyy年MM月dd日”);
String s=df.format(d);//格式化
String s1=“1988年08月30日”;
Sout(df.parse(s1));//解析
练习
使用日期相关API,计算一个人出生了多少天。
提示:Date类有一个方法可以将日期对象转化为对应毫秒值。
Public long getTime()
//获取出生日期
DateFormat df=new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Sout(“输入出生日期,格式为yyyy-mm-dd”);
String birthdayString=new Scanner(System.in).nextLine();(next,nextLine……)
Date birthdayDate=df.parse(birthdayString);
//获取当前日期
Date nowDate=new Date();
//获取两个时间的毫秒值
Long birthdaySecond=birthdayDate.getTime();
Long nowSecond=nowDate.getTime();
//相减即可
Long second=nowSecond-birthdaySecond;