Compare Two Dates In Java
Chapter:
Date and Time
Last Updated:
23-09-2016 07:28:09 UTC
Program:
/* ............... START ............... */
import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class JavaCompareTwoDates {
public static void main(String[] args) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = sdf.parse("2016-01-01");
Date date2 = sdf.parse("2016-12-25");
System.out.println("Date1: " + sdf.format(date1));
System.out.println("Date2: " + sdf.format(date2));
if (date1.compareTo(date2) > 0) {
System.out.println("Date1 is after Date2");
} else if (date1.compareTo(date2) < 0) {
System.out.println("Date1 is before Date2");
} else if (date1.compareTo(date2) < 0) {
System.out.println("Date1 is same as Date2");
}
long diff = date2.getTime() - date1.getTime();
int days = (int) (diff / (1000 * 60 * 60 * 24));
System.out.println("Difference: " + days + " days.");
} catch (ParseException ex) {
}
}
}
/* ............... END ............... */
Output
Date1: 2016-01-01
Date2: 2016-12-25
Date1 is before Date2
Difference: 359 days.
Notes:
-
Date.compareTo() is used to compare two dates in Java.
- Return value is 0 if both dates are equal.
- Return value is greater than 0 , if Date is after the date argument.
- Return value is less than 0, if Date is before the date argument.
Tags
Compare Two Dates, Java