Java的程序里date类型怎么比较大小?

在java的程序里比较date类型的方法如下:
1、java.util.Date类实现了Comparable接口,可以直接调用Date的compareTo()方法来比较大小,compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try {

    Date date1 = format.parse(beginTime);
    
    Date date2 = format.parse(endTime);
    
    int compareTo = date1.compareTo(date2);
    
    System.out.println(compareTo);

} catch (ParseException e) {

    e.printStackTrace();

}

2、通过Date自带的before()或者after()方法比较,如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try {

    Date date1 = format.parse(beginTime);
    
    Date date2 = format.parse(endTime);
    
    boolean before = date1.before(date2);
    
    System.out.println(before);

} catch (ParseException e) {

	e.printStackTrace();

}

3、通过调用Date的getTime()方法获取到毫秒数来进行比较,如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try {

    Date date1 = format.parse(beginTime);
    
    Date date2 = format.parse(endTime);
    
    long beginMillisecond = date1.getTime();
    
    long endMillisecond = date2.getTime();
    
    System.out.println(beginMillisecond > endMillisecond);

} catch (ParseException e) {

    e.printStackTrace();

}

猜你喜欢

转载自blog.csdn.net/weixin_45202377/article/details/91292281
今日推荐