To compare dates in Java, use the compareTo() method. The syntax is as follows −
public int compareTo(Date anotherDate)
Here, anotherDate is the date to be compared with. The return value is 0 if the argument Date is equal to this Date; a value less than 0 if this Date is before the Date argument; and a value greater than 0 if this Date is after the Date argument.
Example
Let us now see an example to compare dates −
import java.util.*;
public class Demo {
public static void main(String[] args) {
// create two dates
Date date = new Date(19, 3, 25);
Date date2 = new Date(19, 9, 12);
// make 3 comparisons with them
int comparison = date.compareTo(date2);
int comparison2 = date2.compareTo(date);
int comparison3 = date.compareTo(date);
// print the results
System.out.println("Comparison Result:" + comparison);
System.out.println("Comparison2 Result:" + comparison2);
System.out.println("Comparison3 Result:" + comparison3);
}
}Output
Comparison Result:-1 Comparison2 Result:1 Comparison3 Result:0
Example
We can also check whether two dates are equals based on millisecond difference using equals() method −
import java.util.*;
public class Demo {
public static void main(String[] args) {
Date date = new Date(70, 1, 10);
Date date2 = new Date(70, 1, 10);
boolean check = date.equals(date2);
System.out.println("Dates are equal:" + check);
}
}Output
Dates are equal:true