public static List<LinkedHashMap<String,Object>> splitDateRangeByHourStr(Date begin, Date end) {
System.out.println("按小时切割");
Calendar calendar = Calendar.getInstance();
Calendar yesterdayCalendar = Calendar.getInstance();
calendar.setTime(begin);
List< LinkedHashMap<String,Object>> list = new ArrayList<>();
LinkedHashMap<String,Object> range= new LinkedHashMap<>();
range.put("begin",simpleDateFormatLong.format(begin));
while (true) {
yesterdayCalendar.setTime(calendar.getTime());
calendar.add(Calendar.MINUTE, 1);
if (calendar.getTime().after(end)) {
range.put("end",simpleDateFormatLong.format(end ));
list.add(range);
break;
}
if (calendar.get(Calendar.HOUR_OF_DAY) == 23||calendar.get(Calendar.DAY_OF_MONTH)>yesterdayCalendar.get(Calendar.DAY_OF_MONTH)) {
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
calendar.set(Calendar.MILLISECOND, 0);
range.put("end",simpleDateFormatLong.format(calendar.getTime() ));
list.add(range);
//第二天时间计算,并创建新的时间段
calendar.add(Calendar.SECOND, 1);
range = new LinkedHashMap<>();
range.put("begin",simpleDateFormatLong.format(calendar.getTime()));
continue;
}
}
return list;
}
时间段按天拆分工具
最新推荐文章于 2023-04-13 18:14:26 发布