总体思路是:对时间过滤时分秒,得到时间的毫秒,两者相减,在除以一天的毫秒数(1000*60*60*24) private int daysBetween(Date now, Date returnDate) ... {
Calendar cNow = Calendar.getInstance();
Calendar cReturnDate = Calendar.getInstance();
cNow.setTime(now);
cReturnDate.setTime(returnDate);
setTimeToMidnight(cNow);
setTimeToMidnight(cReturnDate);
long todayMs = cNow.getTimeInMillis();
long returnMs = cReturnDate.getTimeInMillis();
long intervalMs = todayMs - returnMs;
return millisecondsToDays(intervalMs);
}
private int millisecondsToDays( long intervalMs) ... {
return ( int ) (intervalMs / ( 1000 * 86400 ));
}
private void setTimeToMidnight(Calendar calendar) ... {
calendar.set(Calendar.HOUR_OF_DAY, 0 );
calendar.set(Calendar.MINUTE, 0 );
calendar.set(Calendar.SECOND, 0 );
}