Java开发经验分享之如何获取两个时间之间的所有年月份

前言:相信很多小伙伴在开发过程中都会遇到,获取两个年月直接的所有年月份。当然,小菜在开发中也遇到了,于是便写了一个工具类。(本作品为原创,如有不足之处,还望大牛多给意见。如需转载,请注明出处。谢谢!)。

话不多说,代码如下。直接可用。希望能成为你项目中的一个很好的工具类。

   /**
     * 获取两个时间之间的所有年月份
     * @param begDate  格式:yyyy-MM
     * @param endDate  格式:yyyy-MM
     * @return
     * @throws ParseException
     */
    public static List<String> getMonthBetweenTime(String begDate,String endDate) throws ParseException{
        List<String> monthList = new ArrayList<String>();
        
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");// 格式化为年月
        Calendar min = Calendar.getInstance();
        Calendar max = Calendar.getInstance();

        min.setTime(sdf.parse(begDate));
        min.set(min.get(Calendar.YEAR), min.get(Calendar.MONTH), 1);

        max.setTime(sdf.parse(endDate));
        max.set(max.get(Calendar.YEAR), max.get(Calendar.MONTH), 2);

        Calendar curr = min;
        while (curr.before(max)) {
            monthList.add(sdf.format(curr.getTime()));
            curr.add(Calendar.MONTH, 1);
        }
        return monthList;
    }

 

posted @ 2019-01-28 14:48  Mr.JimYi  阅读(741)  评论(0编辑  收藏  举报