这里介绍Java比较两个日期类型三个例子:
  Date.compareTo()
  一个经典的方法比较两个日期类型。
  public static void main(String[] args) throws ParseException {
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  Date date1 = sdf.parse("2009-12-31");
  Date date2 = sdf.parse("2010-01-31");
  System.out.println(sdf.format(date1));
  System.out.println(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 equal to Date2");
  } else {
  System.out.println("How to get here?");
  }
  }
  Date.before(), Date.after() and Date.equals()
  这是一个对用户更友好的方法去比较两个日期
  public static void main(String[] args) throws ParseException {
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  Date date1 = sdf.parse("2009-12-31");
  Date date2 = sdf.parse("2010-01-31");
  System.out.println(sdf.format(date1));
  System.out.println(sdf.format(date2));
  if (date1.after(date2)) {
  System.out.println("Date1 is after Date2");
  }
  if (date1.before(date2)) {
  System.out.println("Date1 is before Date2");
  }
  if (date1.equals(date2)) {
  System.out.println("Date1 is equal Date2");
  }
  }
  Calender.before(), Calender.after() and Calender.equals()
  常用的方法去比较两个日期java.util.Calendar类
  public static void main(String[] args) throws ParseException {
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  Date date1 = sdf.parse("2009-12-31");
  Date date2 = sdf.parse("2010-01-31");
  System.out.println(sdf.format(date1));
  System.out.println(sdf.format(date2));
  Calendar cal1 = Calendar.getInstance();
  Calendar cal2 = Calendar.getInstance();
  cal1.setTime(date1);
  cal2.setTime(date2);
  if(cal1.after(cal2)){
  System.out.println("Date1 is after Date2");
  }
  if(cal1.before(cal2)){
  System.out.println("Date1 is before Date2");
  }
  if(cal1.equals(cal2)){
  System.out.println("Date1 is equal Date2");
  }
  }