使用Java Date获取一个月内的最大天数存在问题。以下代码在一年中的某些日期之外正常工作。我还没有找到一个模式。 2016年8月31日,它在9月和11月的最大天数中返回1。今天它工作正常。我需要在代码中修改一些内容才能停止此行为吗?
int lastDay;
int lastWeekDay;
public Integer getLastDate(int month, int year) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.MONTH, month);
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
Date date = calendar.getTime();
DateFormat DATE_FORMAT = new SimpleDateFormat("dd");
return Integer.valueOf(DATE_FORMAT.format(date));
}