张某出生日期是“1956年3月23日 14点28分”,请使用日期类相关API计算张某今年多大年级,统计张某到今天为止生活了多少天,多少小时,并输出结果。
百度学相关api
public static void main(String args[]) throws ParseException {
String birthdayDateString = "1956-3-23 14:28";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date birthdayDate = sdf.parse(birthdayDateString);
long birthdayDateTime = birthdayDate.getTime();
long todayTime = System.currentTimeMillis();
long time = todayTime-birthdayDateTime;
System.out.println("天:"+time/1000/60/60/24);
System.out.println("小时:"+time/1000/60/60);
}
除了上面的Date,也可以试试Java 8API,这个相对来说更为方便:
LocalDateTime birthday = LocalDateTime.parse("1956-03-23T14:28:00");
LocalDateTime now = LocalDateTime.now();
// 计算年龄
System.out.println(birthday.until(now, ChronoUnit.YEARS));
// 计算相隔时间
System.out.println(birthday.until(now, ChronoUnit.DAYS));
System.out.println(birthday.until(now, ChronoUnit.HOURS));