编程语言
首页 > 编程语言> > java中Date日期类型的大小比较

java中Date日期类型的大小比较

作者:互联网

 

转:

 

java中Date日期类型的大小比较

2018-07-28 15:29:53 111520 收藏 82 分类专栏: 日期时间 文章标签: java.util.Date 版权

方法一:

java.util.Date类实现了Comparable接口,可以直接调用Date的compareTo()方法来比较大小

  1. String beginTime = "2018-07-28 14:42:32";
  2. String endTime = "2018-07-29 12:26:32";
  3.  
  4. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  5.  
  6. try {
  7. Date date1 = format.parse(beginTime);
  8. Date date2 = format.parse(endTime);
  9.  
  10. int compareTo = date1.compareTo(date2);
  11.  
  12. System.out.println(compareTo);
  13.  
  14. } catch (ParseException e) {
  15. e.printStackTrace();
  16. }

compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0

方法二:

通过Date自带的before()或者after()方法比较

  1. String beginTime = "2018-07-28 14:42:32";
  2. String endTime = "2018-07-29 12:26:32";
  3.  
  4. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  5.  
  6. try {
  7. Date date1 = format.parse(beginTime);
  8. Date date2 = format.parse(endTime);
  9.  
  10. boolean before = date1.before(date2);
  11.  
  12. System.out.println(before);
  13.  
  14. } catch (ParseException e) {
  15. e.printStackTrace();
  16. }

before()或者after()方法的返回值为boolean类型

方法三:

通过调用Date的getTime()方法获取到毫秒数来进行比较

  1. String beginTime = "2018-07-28 14:42:32";
  2. String endTime = "2018-07-29 12:26:32";
  3.  
  4. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  5.  
  6. try {
  7. Date date1 = format.parse(beginTime);
  8. Date date2 = format.parse(endTime);
  9.  
  10. long beginMillisecond = date1.getTime();
  11. long endMillisecond = date2.getTime();
  12.  
  13. System.out.println(beginMillisecond > endMillisecond);
  14.  
  15. } catch (ParseException e) {
  16. e.printStackTrace();
  17. }

 

标签:date1,date2,java,07,format,日期,2018,Date
来源: https://www.cnblogs.com/libin6505/p/14018326.html