一、代码
public class DateUtils {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String beginTime = "2021-11-25";
String endTime = "2021-12-02";
Date beginDate = sdf.parse(beginTime);
Date endDate = sdf.parse(endTime);
List<Date> dateList = getDateByTimeRange(beginDate, endDate);
// 输出打印
dateList.stream().map((item)->sdf.format(item)).forEach(System.out::println);
}
public static List<Date> getDateByTimeRange(Date beginDate, Date endDate) {
List dateList = new ArrayList();
dateList.add(beginDate);
Calendar beginCalendar = Calendar.getInstance();
// 使用给定的 Date 设置此 Calendar 的时间
beginCalendar.setTime(beginDate);
Calendar endCalendar = Calendar.getInstance();
// 使用给定的 Date 设置此 Calendar 的时间
endCalendar.setTime(endDate);
// 测试此日期是否在指定日期之后
while (endDate.after(beginCalendar.getTime())) {
// 根据日历的规则,为给定的日历字段添加或减去指定的时间量
beginCalendar.add(Calendar.DAY_OF_MONTH, 1);
dateList.add(beginCalendar.getTime());
}
return dateList;
}
}
二、测试结果