java获取两个日期之间的所有日期

java 复制代码
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

public class DateUtils {

    public static List<String> getDatesBetween(String startDateStr, String endDateStr) {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
        LocalDate startDate = LocalDate.parse(startDateStr, formatter);
        LocalDate endDate = LocalDate.parse(endDateStr, formatter);
        List<String> dates = new ArrayList<>();
		//这里是判断开始日期是否在结束日期之后或者=结束日期
        while (startDate .isBefore(endDate) || startDate .isEqual(endDate)) {
			String add = startDate .format(formatter);
            dates.add(add);
            startDate = startDate .plusDays(1);
        }
        return dates;
    }
}
相关推荐
星秀日5 分钟前
Spring Boot + Sa-Token 实时聊天系统:用户注册流程源码深度剖析
java·人工智能·spring·状态模式
Shan12059 分钟前
C++中函数对象之重载 operator()
开发语言·c++·算法
HelloWorld1024!17 分钟前
c++核心之万字详解 * 和 & 所有用法(指针、引用、取地址、解引用、常量修饰)
开发语言
Legendary_00824 分钟前
解析 PD Sink 与 LDR6500U:Type-C 取电的核心密码
c语言·开发语言
冴羽yayujs30 分钟前
JavaScript 9 个先有库再有 API 的故事
开发语言·javascript·ecmascript
回忆2012初秋32 分钟前
.NET 8.0 实战:基于 MQTTnet 封装高可用的 MQTT 发布/订阅工具类
开发语言·mqtt·.net
油丶酸萝卜别吃1 小时前
JavaScript 深度合并函数 deepMerge 实现指南(附完整测试用例)
开发语言·javascript·测试用例
念恒123061 小时前
Python(for循环进阶)
开发语言·python
YOU OU1 小时前
SpringBoot 配置文件
java·spring boot·后端
c++之路1 小时前
观察者模式(Observer Pattern)
java·网络·观察者模式