加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 比较两个日期与时间,其中Formate是yyyy-MM-dd HH:mm:s

发布时间:2020-12-15 04:43:52 所属栏目:Java 来源:网络整理
导读:我必须比较格式为yyyy-MM-dd HH:mm:ss的两个日期.我知道比较日期只能在日期之前或日期之后的方法. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String currentDateandTime = sdf.format(new Date());String expiryTime = "2014-
我必须比较格式为yyyy-MM-dd HH:mm:ss的两个日期.我知道比较日期只能在日期之前或日期之后的方法.

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                String currentDateandTime = sdf.format(new Date());
String expiryTime = "2014-09-10 00:00:00";

但是,将日期和时间与当前日期和时间进行比较的最佳方法是什么.
就像我们有两个日期2014-09-10 00:00:00和当前日期的时间是2014-08-31 10:37:15.现在我们要比较它.我们怎么做到这一点.

任何帮助表示赞赏.

解决方法

使用 SimpleDateFormat将Date String转换为java.util.Date对象,并将这些日期对象与 Date#afterDate#before方法进行比较.

在java 8中 – 使用新的Java Time API,使用DateTimeFormat解析日期String并获取LocalDate对象并进行比较.

DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
final LocalDate dt1 = dtf.parseLocalDate(dateString1);
final LocalDate dt2 = dtf.parseLocalDate(dateString2);

final boolean check = dt1.isAfter(dt2);
if(check)
    System.out.println(dt1 +" is after "+dt2);
else
    System.out.println(dt2 +" is after "+dt1);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读