Java中传入一个时间范围,取出该时间范围内所有日期的集合

直接上代码:

复制代码
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.List;
import java.util.Optional;
import java.util.function.Predicate;
import java.util.stream.Collectors;
import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;

import java.text.DateFormat;
import java.text.SimpleDateFormat;

/**
 * 
  * @description: Java中传入一个时间段,取出该时间段内所有日期的集合
 * @author: fuzongle
 * @Date: 2019-11-22 16:06
 *
 */
public class Demo01 {
    
       public static void main(String[] args) throws Exception {

           
            findDates("2018-02-12","2018-11-25");

        }

       public static List<String> findDates(String dBegin, String dEnd) throws ParseException, java.text.ParseException {
            //日期工具类准备
            DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
     
            //设置开始时间
            Calendar calBegin = Calendar.getInstance();
            calBegin.setTime(format.parse(dBegin));
     
            //设置结束时间
            Calendar calEnd = Calendar.getInstance();
            calEnd.setTime(format.parse(dEnd));
     
            //装返回的日期集合容器
            List<String> Datelist = new ArrayList<String>();
            //将第一个月添加里面去
            Datelist.add(format.format(calBegin.getTime()));
            // 每次循环给calBegin日期加一天,直到calBegin.getTime()时间等于dEnd
            while (format.parse(dEnd).after(calBegin.getTime()))  {
                // 根据日历的规则,为给定的日历字段添加或减去指定的时间量
                calBegin.add(Calendar.DAY_OF_MONTH, 1);
                Datelist.add(format.format(calBegin.getTime()));
            }
     
            System.out.println(Datelist);
            return Datelist;
        }

}
复制代码

控制台打印结果:

  

posted @   付宗乐  阅读(4957)  评论(0编辑  收藏  举报
编辑推荐:
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
阅读排行:
· 手把手教你更优雅的享受 DeepSeek
· 腾讯元宝接入 DeepSeek R1 模型,支持深度思考 + 联网搜索,好用不卡机!
· AI工具推荐:领先的开源 AI 代码助手——Continue
· 探秘Transformer系列之(2)---总体架构
· V-Control:一个基于 .NET MAUI 的开箱即用的UI组件库
点击右上角即可分享
微信分享提示