本文主要介绍了SimpleDateFormat这个类的使用方法。
根据SimpleDateFormat的构造方法 SimpleDateFormat(String pattern) 可以将使用指定的模式进行对象的构建。
并且运用多态的特性,调用SimpleDataFormat的父类DateFormat的方法 Date parse(String source) 该方法的功能是从给定字符串的开始解析文本,以生成一个日期。
生成日期后,调用Date类的getTime方法,该方法的功能是返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
将今天的日期与周杰伦出生的日期转换成毫秒数,相减,再将毫秒转换天,即可得出结果。
实现的代码如下:
public class HowManyDayAliveDemo {
public static void main(String[] args) throws ParseException {
//周杰伦的生日为:1979年1月18日
String birthday = "1979-1-18";
//今天的日期为2018年1月25日
String today = "2018-1-25";
//使用指定的模式进行对象的构建
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//将给定的时间字符串解析生成一个日期
Date d1 = sdf.parse(birthday);
Date d2 = sdf.parse(today);
//getTime返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
long l1 = d1.getTime();
long l2 = d2.getTime();
//将两者的数值相减计算出时间
long liveDay = (l2-l1)/1000/60/60/24;
System.out.println(liveDay);
}
}
运行结果如下: