一、Calendar遍历指定年份的十二个月
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Date startDate = sdf.parse(year + "-01");
Date endDate = sdf.parse(year + "-12");
c.setTime(startDate);
while(c.getTime().compareTo(endDate) <= 0){
String time = sdf.format(c.getTime());
System.out.println(time);
c.add(Calendar.MONTH, 1);
}
二、Calendar遍历指定月份的每一天
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1;
int dayCount = c.getActualMaximum(Calendar.DAY_OF_MONTH);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = sdf.parse(year + "-" + month + "-01");
Date endDate = sdf.parse(year + "-" + month + "-" + dayCount);
c.setTime(startDate);
while(c.getTime().compareTo(endDate) <= 0){
String time = sdf.format(c.getTime());
System.out.println(time);
c.add(Calendar.DATE, 1);
}
三、Calendar遍历指定日期的24小时
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1;
int date = c.get(Calendar.DATE);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH");
Date startDate = sdf.parse(year + "-" + month + "-" + date + " 00");
Date endDate = sdf.parse(year + "-" + month + "-" + date + " 23");
c.setTime(startDate);
while(c.getTime().compareTo(endDate) <= 0){
String time = sdf.format(c.getTime());
System.out.println(time);
c.add(Calendar.HOUR, 1);
}