您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 开发技术 > 正文

Java如何比较日期类型

发表于:2017-08-08 作者:网络转载 来源:

  这里介绍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");
  }
  }