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