java 获取一定时间范围内的所有月份
程序员文章站
2022-06-07 11:54:58
...
需求:获取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());
}
}
结果: 本不包含当月的,手动添加到。