java 獲取 獲取某年某月 所有日期(yyyy-mm-dd格式字符串)
/**
- java 獲取 獲取某年某月 所有日期(yyyy-mm-dd格式字符串)
- @param year
- @param month
- @return
/
public List getMonthFullDay(int year , int month){
SimpleDateFormat dateFormatYYYYMMDD = new SimpleDateFormat(“yyyy-MM-dd”);
List fullDayList = new ArrayList<>(32);
// 獲得當前日期對象
Calendar cal = Calendar.getInstance();
cal.clear();// 清除信息
cal.set(Calendar.YEAR, year);
// 1月從0開始
cal.set(Calendar.MONTH, month-1 );
// 當月1號
cal.set(Calendar.DAY_OF_MONTH,1);
int count = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
for (int j = 1; j <= count ; j++) {
fullDayList.add(dateFormatYYYYMMDD.format(cal.getTime()));
cal.add(Calendar.DAY_OF_MONTH,1);
}
return fullDayList;
}
/* - 某年某月的最後一天
- @param year
- @param month
- @return
*/
public String getLastDay(int year,int month){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month);
cal.set(Calendar.DAY_OF_MONTH, 0); //關鍵!
return dateFormatYYYYMMDD.format(cal.getTime());
}
/**
- 獲取某年某月某日 是 星期幾
- @param year
- @param month
- @param day
- @return
*/
public String getDayOfWeek(int year , int month , int day){
//本地化
Locale.setDefault(Locale.CHINA);
String[] dayStringOfWeek = {“星期日”,“星期一”,“星期二”,“星期三”,“星期四”,“星期五”,“星期六”};
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month - 1);
cal.set(Calendar.DAY_OF_MONTH, day);
// Java中Calendar.DAY_OF_WEEK其實表示:一週中的第幾天,所以他會受到第一天是 星期一 還是 星期日 的影響
int d = cal.get(Calendar.DAY_OF_WEEK);
return dayStringOfWeek[d-1];
}