求2020-1-1至2019-12-25之间间隔的天数。
代码块如下:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = format.parse("2020-1-1");
Date date2 = format.parse("2019-12-25");
int result = differentDays2(date1, date2);
System.out.println(result);
// 求两时间之间的天数间隔
public static int differentDays2(Date date1, Date date2) {
int result = 0;
if (date1.before(date2)) {
long temp = date1.getTime();
date1.setTime(date2.getTime());
date2.setTime(temp);
}
Calendar c1 = Calendar.getInstance();
c1.setTime(date1);
Calendar c2 = Calendar.getInstance();
c2.setTime(date2);
int year1 = c1.get(Calendar.YEAR);
int year2 = c2.get(Calendar.YEAR);
if (year1 == year2) {
result = c1.get(Calendar.DAY_OF_YEAR) - c2.get(Calendar.DAY_OF_YEAR);
} else {
if (year2 % 4 == 0 && year2 % 100 != 0 || year2 % 400 == 0) {
result = c1.get(Calendar.DAY_OF_YEAR) + (366 - c2.get(Calendar.DAY_OF_YEAR));
} else {
result = c1.get(Calendar.DAY_OF_YEAR) + (365 - c2.get(Calendar.DAY_OF_YEAR));
}
}
return result;
}