Java 獲取兩個日期之間的所有日期


import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;

/**
 * 獲取兩個日期之間的所有日期
 * @param startTime 開始日期
 * @param endTime 結束日期
 * @return
 */
public static List<String> getDays(String startTime, String endTime) {

    // 返回的日期集合
    List<String> days = new ArrayList<String>();

    DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    try {
        Date start = dateFormat.parse(startTime);
        Date end = dateFormat.parse(endTime);

        Calendar tempStart = Calendar.getInstance();
        tempStart.setTime(start);

        Calendar tempEnd = Calendar.getInstance();
        tempEnd.setTime(end);
        tempEnd.add(Calendar.DATE, +1);// 日期加1(包含結束)
        while (tempStart.before(tempEnd)) {
            days.add(dateFormat.format(tempStart.getTime()));
            tempStart.add(Calendar.DAY_OF_YEAR, 1);
        }

    } catch (ParseException e) {
        e.printStackTrace();
    }

    return days;
}

轉自:https://blog.csdn.net/itmyhome1990/article/details/81020941


免責聲明!

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



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