Java 如何检查两个日期之间是否至少相差1天
因此,我必须检查两个日期之间的差异是否至少为一天。然后该方法应返回true,否则为false 我使用的日期格式是Java 如何检查两个日期之间是否至少相差1天,java,date,compare,gregorian-calendar,Java,Date,Compare,Gregorian Calendar,因此,我必须检查两个日期之间的差异是否至少为一天。然后该方法应返回true,否则为false 我使用的日期格式是gregorianalendar(年、月、日) 因此,我已经有了一个使用date1.before(date2)的方法,但它也会检查时间,因此如果date1在date2之前,它会返回true,即使它们是同一天(但时间不同!) 我需要的是一种方法来检查日期之间的差异是否至少为1天 有什么想法吗?在cal1中添加1天,然后测试是否在cal2之后 cal1.add(Calendar.D
gregorianalendar(年、月、日)
因此,我已经有了一个使用date1.before(date2)
的方法,但它也会检查时间,因此如果date1
在date2
之前,它会返回true,即使它们是同一天(但时间不同!)
我需要的是一种方法来检查日期之间的差异是否至少为1天
有什么想法吗?在cal1中添加1天,然后测试是否在cal2之后
cal1.add(Calendar.DATE, 1);
System.out.println(!cal1.after(cal2));
在cal1中添加1天,如果不是在cal2之后,则进行测试
cal1.add(Calendar.DATE, 1);
System.out.println(!cal1.after(cal2));
您可以使用以下内容:
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;
}
您可以使用以下内容:
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.before(cal2)=true
在执行此操作之前,您还需要检查cal1.before(cal2)=true