LocalDate
public static void main(String[] args) {
LocalDate today = LocalDate.now();
System.out.println("今天的日期是:" + today);
int year = today.getYear();
int month = today.getMonthValue();
int dayOfYear = today.getDayOfYear();
int dayOfMonth = today.getDayOfMonth();
System.out.println("今天的日期是:" + year + "年" + month + "月" + dayOfMonth + "日");
LocalDate todayOfNextYear = today.plusYears(1);
System.out.println("明年的今天是:" + todayOfNextYear);
LocalDate localOfLastYear = today.minusYears(1);
System.out.println("去年的今天是:" + localOfLastYear);
LocalDate todayOfNextMonth = today.plusMonths(1);
System.out.println("一個月後的今天是:" + todayOfNextMonth);
LocalDate todayOfLastMonth = today.minusMonths(1);
System.out.println("一個月前的今天是:" + todayOfLastMonth);
//判斷是否爲閏年
boolean leapYear = today.isLeapYear();
System.out.println("今年是閏年嗎:" + leapYear);
LocalDate localDate = LocalDate.of(2019, 8, 25);
System.out.println("指定日期爲:" + localDate);
//兩個日期的比較
LocalDate day1 = LocalDate.of(2008, 2, 8);
System.out.println("今天是2019-2-8嗎:" + today.equals(day1));
System.out.println("今天在2019-2-8之前嗎:" + today.isBefore(day1));
System.out.println("今天在2019-2-8之後嗎:" + today.isAfter(day1));
// 兩個日期相差幾天
Period between = Period.between(day1, today);
System.out.println("今天與2008年相差幾年:" + between.getYears());
System.out.println("今天與2月相差幾個月:" + between.getMonths());
System.out.println("今天與2-8相差幾天:" + between.getDays());
// 判斷兩個日期相差幾天
LocalDate day2 = LocalDate.of(2010, 3, 8);
LocalDate day3 = LocalDate.of(2009, 2, 8);
System.out.println("兩個日期相隔幾天" + (day2.toEpochDay() - day3.toEpochDay()));
}
1.LocalDate計算兩個日期間距離
1、LocalDate提供了until()方法,計算了兩個日期之間的年、月和日的週期
LocalDate localDate1 = LocalDate.parse("2017-08-28");
LocalDate LocalDate2 = LocalDate.parse("2018-09-30");
int years = localDate1.until(LocalDate2).getYears();
int months = localDate1.until(LocalDate2).getMonths();
int days = localDate1.until(LocalDate2).getDays();
System.out.println("間隔:"+years + "年," + months + " 月," + days + "日");
2.LocalDate提供了until(Temporal endExclusive, TemporalUnit unit),計算兩個日期間距離:
LocalDate start = LocalDate.parse("2018-08-28");
LocalDate end = LocalDate.parse("2019-09-30");
long year = start.until(end, ChronoUnit.YEARS);
long month = start.until(end, ChronoUnit.MONTHS);
long days = start.until(end, ChronoUnit.DAYS);
System.out.println("間隔:" + year + "年");
System.out.println("間隔:" + month + "月");
System.out.println("間隔:" + days + "天");