Java 獲取指定范圍內的日期時間


一、代碼

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;
    }
}

二、測試結果

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM