/**
* 获取传入月份的当月所有日期
*
* @param date
* @return
*/
public static List<String> getMonthFullDay(String date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
List<String> fullDayList = new ArrayList<String>();
int year = Integer.parseInt(date.substring(0, 4));
int month = Integer.parseInt(date.substring(5, 7));
int day = 26;// 所有月份从1号开始
Calendar cal = Calendar.getInstance();// 获得当前日期对象
cal.clear();// 清除信息
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month - 2);// 1月从0开始
cal.set(Calendar.DAY_OF_MONTH, day);
int count = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
for (int j = 0; j <= (count - 1); ) {
if (sdf.format(cal.getTime()).equals(getLastDay(year, month))) {
break;
}
cal.add(Calendar.DAY_OF_MONTH, j == 0 ? +0 : +1);
j++;
fullDayList.add(sdf.format(cal.getTime()));
}
System.out.println(fullDayList);
return fullDayList;
}
public static String getLastDay(int year, int month) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month);
cal.set(Calendar.DAY_OF_MONTH, 0);
return sdf.format(cal.getTime());
}
JAVA传入某月份,获取该月份上个月26到此月25之间的所有日期
最新推荐文章于 2024-04-25 11:07:58 发布