Reshma Bidikar

Prior to Java 8, you had to write complex logic to find the number of years between two dates. The DateTime API introduced from Java 8 onwards provides some methods that let you easily find the number of years between two dates.

The following code demonstrates this:

public static void main(String[] args) {
  LocalDate date1 = LocalDate.parse("1997-04-28");
  LocalDate date2 = LocalDate.parse("2015-11-25");
  Period period = date1.until(date2);
  int yearsBetween = period.getYears();
  System.out.println("yearsBetween:"+yearsBetween);
}

Java 8 has added a LocalDate class to represent a Date. So in this code, both the input Dates are held within LocalDate objects. There is a method called until on the LocalDate class. This returns a Period instance. Period has a method called getYears which returns the number of years. So this code prints the following output:

yearsBetween:18