java中如何对Date日期类型进行大小比较呢?

乔欣 Java经验 发布时间:2023-03-01 17:11:26 阅读数:6042 1
下文笔者讲述使用java代码对Date日期类型进行大小比较的方法分享,如下所示

Date类型比较的实现思路

方式1:
   使用Date对象的compareTo()方法
方式2:
   Date自带的before()或者after()方法
方式3:
   使用Date的getTime()方法返回毫秒数
     然后进行比较

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

String beginTime = "2023-03-28 15:42:32";
String endTime = "2023-03-29 10: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();
}

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

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

String beginTime = "2023-03-28 15:42:32";
String endTime = "2023-03-29 10: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); // true

    boolean after = date1.after(date2);
    System.out.println(after); // false
	
} catch (ParseException e) {
	e.printStackTrace();
}

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

使用Date对象的getTime()方法获取到毫秒数来进行比较

String beginTime = "2023-03-28 15:42:32";
String endTime = "2023-03-29 10: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();
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202303/16776624205949.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者