// your custom time format
public static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
/**
*
* @description: 获取两个日期之间的所有日期(参数及返回日期均为字符串格式)
* @param startTime 开始日期
* @param endTime 结束日期
* @return List<String> 日期集合
* @throws ParseException
*/
public static List<String> getTimesBetweenDates(String startTime, String endTime) throws ParseException {
Date start = dateFormat.parse(startTime);
Date end = dateFormat.parse(endTime);
System.out.println(startTime + "***" + endTime);
// 如果时间传反了
long time1 = start.getTime();
long time2 = end.getTime();
Date midTime = new Date();
if (time1 > time2) {
midTime = start;
start = end;
end = midTime;
}
List<String> result = new ArrayList<String>();
Calendar startCal = Calendar.getInstance();
startCal.setTime(start);
Calendar endCal = Calendar.getInstance();
endCal.setTime(end);
endCal.add(Calendar.DATE, +1);// 日期+1,将结束日期放入结果集
while (startCal.before(endCal)) {
result.add(formatDate(startCal.getTime()));
startCal.add(Calendar.DAY_OF_YEAR, 1);
}
return result;
}
public static String formatDate(Date date) {
return dateFormat.format(date);
}
JAVA获取两个日期之间的所有日期(包含开始时间和结束时间)
于 2018-12-12 10:24:36 首次发布