所以,我必须检查两个日期之间的差异是否至少一天。那么该方法应该返回true,否则为false。
我使用的日期格式是GregorianCalendar(year, month, day)
.
所以我已经有一个使用 的方法date1.before(date2)
,但它也检查时间,所以如果date1
在date2
它返回 true 之前,即使它们是同一天(但时间不同!)。
我需要的是一种方法来检查日期之间的差异是否至少为 1 天。
有任何想法吗?
所以,我必须检查两个日期之间的差异是否至少一天。那么该方法应该返回true,否则为false。
我使用的日期格式是GregorianCalendar(year, month, day)
.
所以我已经有一个使用 的方法date1.before(date2)
,但它也检查时间,所以如果date1
在date2
它返回 true 之前,即使它们是同一天(但时间不同!)。
我需要的是一种方法来检查日期之间的差异是否至少为 1 天。
有任何想法吗?
你可以使用这样的东西:
public boolean dateDifference(Date d1, Date d2)
{
long currentDateMilliSec = d1.getTime();
long updateDateMilliSec = d2.getTime();
long diffDays = (currentDateMilliSec - updateDateMilliSec) / (24 * 60 * 60 * 1000);
if (diffDays >= 1) return true;
else return false;
}
在 cal1 上加 1 天,并测试它是否不在 cal2 之后
cal1.add(Calendar.DATE, 1);
System.out.println(!cal1.after(cal2));