public final class LocalDateTimeUtils {
//年
public static final String YEAR_MONTH= "yyyy";
//年月
public static final String YEAR_MONTH= "yyyyMM";
//年月日
public static final String YEAR_MONTH_DAY= "yyyyMMdd"
/年月日时
public static final String YEAR_MONTH_HOURS= "yyyyMMddHH"
public static List<String> getYearsBetween(LocalDateTime start, LocalDateTime end, String timeFormat) {
return Stream.iterate(start, d -> d.plusYears(1))
.limit(ChronoUnit.YEARS.between(start, end) + 1)
.map(localDateTime -> {
return localDateTime.format(DateTimeFormatter.ofPattern(timeFormat));
})
.collect(Collectors.toList());
}
public static List<String> getMonthsBetween(LocalDateTime start, LocalDateTime end, String timeFormat) {
return Stream.iterate(start, d -> d.plusMonths(1))
.limit(ChronoUnit.MONTHS.between(start, end) + 1)
.map(localDateTime -> {
return localDateTime.format(DateTimeFormatter.ofPattern(timeFormat));
})
.collect(Collectors.toList());
}
public static List<String> getDaysBetween(LocalDateTime start, LocalDateTime end, String timeFormat) {
return Stream.iterate(start, d -> d.plusDays(1))
.limit(ChronoUnit.DAYS.between(start, end) + 1)
.map(localDateTime -> {
return localDateTime.format(DateTimeFormatter.ofPattern(timeFormat));
})
.collect(Collectors.toList());
}
public static List<String> getHoursBetween(LocalDateTime start, LocalDateTime end, String timeFormat) {
return Stream.iterate(start, d -> d.plusHours(1))
.limit(ChronoUnit.HOURS.between(start, end) + 1)
.map(localDateTime -> {
return localDateTime.format(DateTimeFormatter.ofPattern(timeFormat));
})
.collect(Collectors.toList());
}
}
获取LocalDateTime两个时间点之间的所有年月,年月日,年月日点格式字符串数组
于 2023-06-06 12:45:42 首次发布