使用日期before方法比较两个日期时,如果日期相似,则返回false,如下所示:
- 日期 1:2012 年 12 月 18 日星期二 00:00:00 GMT+02:00
- 日期 2:2012 年 12 月 18 日星期二 00:00:00 GMT+02:00
date1.before(date2)
方法在这种情况下总是返回 false,这对我来说没有意义(换句话说,不适用于我的情况)。
我想检查日期(日/月/年)是否等于今天的日期(日/月/年)?
最佳答案
作为date1.equals(date2)
,date1.before(date2)
返回false是正常的。就像 date1.after(date2)
.
两个日期相同,所以一个不在另一个之前。
来自 javadoc :
true if and only if the instant of time represented by this Date object is strictly earlier than the instant represented by when; false otherwise.
尝试类似:
if(date1.before(date2) || date1.equals(date2)) ...
下面提供的答案建议测试逆向,它们是正确的:
if(!date1.after(date2)) ...
两个测试是等价的。
关于java - 如果两个日期相等,则 Date before 方法返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13936576/