我们写代码的时候经常会使用到比较两个日期相差的天数,我之前用过实现这一功能的两个版本的方法,于是整理出来分享一下:
(版本1)
publicstaticint getIntervalDays(Date fDate, Date oDate) {
if (null == fDate || null == oDate) {
return -1;
}
long intervalMilli = oDate.getTime() - fDate.getTime();
return (int) (intervalMilli / (24 * 60 * 60 * 1000));//这里是以毫秒计算,所以要转换一下格式
}
(版本2)
publicstaticint daysOfTwo(Date fDate, Date oDate) {
Calendar aCalendar = Calendar.getInstance();
aCalendar.setTime(fDate);
int day1 = aCalendar.get(Calendar.DAY_OF_YEAR);
aCalendar.setTime(oDate);
int day2 = aCalendar.get(Calendar.DAY_OF_YEAR);
return day2 - day1;
}
这两个方法输出的结果不一定相同,版本1带有分秒的概念,版本2只关注天的概念;