获取2个日期(年月日)之间的所有日期
public static List<String> getDatesBetween(String startDateStr, String endDateStr) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate startDate = LocalDate.parse(startDateStr, formatter);
LocalDate endDate = LocalDate.parse(endDateStr, formatter);
List<String> datas = new ArrayList<>();
//这里是判断开始日期是否在结束日期之后或者=结束日期
while (startDate .isBefore(endDate) || startDate .isEqual(endDate)) {
String add = startDate .format(formatter);
datas.add(add );
startDate = startDate .plusDays(1);
}
return datas;
}
获取2个月份之前的所有月份
public static List<String> getMonthsBetween(String startMonth, String endMonth) {
List<String> monthRange = new ArrayList<>();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth start = YearMonth.parse(startMonth, formatter);
YearMonth end = YearMonth.parse(endMonth, formatter);
while (!start.isAfter(end)) {
monthRange.add(start.format(formatter));
start = start.plusMonths(1);
}
return monthRange;
}
获取2个年份之前的所有年份
public static List<String> getYearsBetween(String startYearStr, String endYearStr) {
List<String> yearRange = new ArrayList<>();
List<NumAndSizeTrendVo> datas = new ArrayList<>();
int startYear= Integer.parseInt(startYearStr);
int endYear= Integer.parseInt(endYearStr);
if (startYear <= endYear) {
for (int year = startYear; year <= endYear; year++) {
yearRange.add(String.valueOf(year)); // 将年份添加到列表中
}
} else {
System.out.println("开始年份必须小于或等于结束年份。");
}
return datas;
}
至此已全部内容,仅此供大家参考,谢谢!