所以,我必须检查两个日期之间的差异是否至少为一天。然后该方法应返回true,否则为false。
我使用的日期格式为GregorianCalendar(year, month, day)
。
所以我已经有了一个使用date1.before(date2)
的方法,但是也会检查时间,所以如果date1
在date2
之前,它会返回true,即使它们是同一天(但时间不同了!)。
我需要的是一种检查日期之间的差异是否至少为1天的方法。
有什么想法吗?
答案 0 :(得分:1)
向cal1添加1天并测试它是否不在cal2
之后 cal1.add(Calendar.DATE, 1);
System.out.println(!cal1.after(cal2));
答案 1 :(得分: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;
}
答案 2 :(得分:0)
这对我来说有点像家庭作业,但你可以从这个类似的问题中找到一些帮助:Calculating difference in days between dates