java計算兩個時間的差距
阿新 • • 發佈:2021-01-06
java計算兩個時間的差距
直接看程式碼吧
public static void main(String[] args) {
// 計算兩個日期之間差了多少年、多少月、多少日,此結果為組合使用
DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate startDate = LocalDate.parse("2020-12-31", dateFormatter);
LocalDate endDate = LocalDate.parse("2021-01-01", dateFormatter);
Period between = Period.between(startDate, endDate);
// 用此類也是一樣的效果
// ChronoUnit.DAYS.between(startDate, endDate);
System.out.printf("差距 %s 年 ,%s 月, %s 日 \n", between.getYears(), between.getMonths(), between. getDays());
// 計算兩個時間之間差了多少年、多少月、多少日,多少時,多少分,多少秒,此方法為單獨計算
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime startTime = LocalDateTime.parse("2020-12-31 01:23:23", dateTimeFormatter);
LocalDateTime endTime = LocalDateTime.parse("2021-12-30 12:23:23", dateTimeFormatter);
Duration duration = Duration.between(startTime, endTime);
System.out.printf("差距%s 年 ,%s 月, %s 日, %s 時 ,%s 分, %s 秒 \n",
startTime.until(endTime, ChronoUnit.YEARS),
startTime.until(endTime, ChronoUnit.MONTHS),
startTime.until(endTime, ChronoUnit.DAYS),
startTime.until(endTime, ChronoUnit.HOURS),
startTime.until(endTime, ChronoUnit.MINUTES),
startTime.until(endTime, ChronoUnit.SECONDS));
}