如何在Java中比较两个字符串日期?


问题内容

我有两个日期的String格式,如下所示-

String startDate = "2014/09/12 00:00";

String endDate = "2014/09/13 00:00";

我想确保startDate应该小于endDate。startDate不应大于endDate。

如何比较这两个日期并相应地返回布尔值?


问题答案:

将它们转换为实际Date对象,然后调用before

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd h:m");
System.out.println(sdf.parse(startDate).before(sdf.parse(endDate)));

回想一下parse将抛出一个ParseException,因此您应该将其捕获在此代码块中,或者声明将其作为方法签名的一部分进行抛出。