根据2个时间,分割各个月份

【根据2个时间,分割各个月份】为什么80%的码农都做不了架构师?>>>根据2个时间,分割各个月份
文章图片

代码效果
2018-01-29至 2018-03-07
分割为
2018-01-292018-01-31
2018-02-012018-02-28
2018-03-012018-03-07
DateUtil 还有用到 http://feilong-core.mydoc.io/ 工具包

int i = 0;
while(true){
Date sdate = new Date();
Date edate = new Date();
if (i == 0) {
sdate = insurance.date_of_start;
edate = DateUtil.getLastDateOfThisMonth(insurance.date_of_start);
}else{
Date first_month= DateUtil.getFirstDateOfThisMonth(insurance.date_of_start);
Date next_month = DateUtil.addMonth(first_month, i);
sdate = DateUtil.getFirstDateOfThisMonth(next_month);
edate = DateUtil.getLastDateOfThisMonth(next_month);
}
if (edate.after(insurance.date_of_end)) {
edate = insurance.date_of_end;
}
System.out.println("mon:"+(i+1));
System.out.println("sdate"+Util.dateformat(sdate, "yyyy-MM-dd"));
System.out.println("edate"+Util.dateformat(edate, "yyyy-MM-dd"));
i++;
System.out.println(edate.getTime()>=insurance.date_of_end.getTime());
if (edate.getTime()>=insurance.date_of_end.getTime()) {
break;
}
if (i>100) { //保险,防止死循环
break;
}
}
转载于:https://my.oschina.net/nbuu/blog/1632263

    推荐阅读