java 获取一定时间范围内的所有月份

需求:获取2018年初到现在为止的所有月份统计数据

获取到所有月份 遍历月份获取数据得到list在前台显示

代码:

main方法  使用simpledateFormat需要用try catch 包围

public static void main(String[] args) {

        try{

            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
            String nowdate=format.format(new Date());//当前月份

            Date d1 = new SimpleDateFormat("yyyy-MM").parse("2018-01");//定义起始日期

            Date d2 = new SimpleDateFormat("yyyy-MM").parse(nowdate);//定义结束日期  可以去当前月也可以手动写日期。

            Calendar dd = Calendar.getInstance();//定义日期实例

            dd.setTime(d1);//设置日期起始时间

            while (dd.getTime().before(d2)) {//判断是否到结束日期

                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");

                String str = sdf.format(dd.getTime());

                System.out.println(str);//输出日期结果

                dd.add(Calendar.MONTH, 1);//进行当前日期月份加1

            }
            System.out.println(nowdate);//输出日期结果

        }catch (Exception e){
            System.out.println("异常"+e.getMessage());
        }

    }

结果: 本不包含当月的,手动添加到。

猜你喜欢

转载自blog.csdn.net/alice_qixin/article/details/80061512