In Java, two dates can be compared using the compareTo() method of Comparable interface. This method returns '0' if both the dates are equal, it returns a value "greater than 0" if date1 is after date2 and it returns a value "less than 0" if date1 is before date2.
Syntax
int compareTo(T o)
Example
import java.text.*;
import java.util.Date;
public class CompareTwoDatesTest {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdformat = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = sdformat.parse("2019-04-15");
Date d2 = sdformat.parse("2019-08-10");
System.out.println("The date 1 is: " + sdformat.format(d1));
System.out.println("The date 2 is: " + sdformat.format(d2));
if(d1.compareTo(d2) > 0) {
System.out.println("Date 1 occurs after Date 2");
} else if(d1.compareTo(d2) < 0) {
System.out.println("Date 1 occurs before Date 2");
} else if(d1.compareTo(d2) == 0) {
System.out.println("Both dates are equal");
}
}
}In the above example, the date d1 occurs before the date d2, so it can display "Date 1 occurs before Date 2" in the console.
Output
The date 1 is: 2019-04-15 The date 2 is: 2019-08-10 Date 1 occurs before Date 2