我必须修复一些代码。由于某种原因,Calender.getMaximum(Calendar.DAY_OF_MONTH)2019 年 6 月返回了 31 天,而不是 30 天,因为 6 月只有 30 天。
public static int getWorkingDaysInMonth(int month, int year) {
Calendar monthStart = Calendar.getInstance();
Calendar monthEnd = Calendar.getInstance();
monthStart.set(year, month, 1);
return monthStart.getActualMaximum(Calendar.DAY_OF_MONTH);
}
Run Code Online (Sandbox Code Playgroud)
现在如你所见,我替换getMaximum()为getActualMaximum(). 现在我得到了 lastday = 30 ,所以现在它是正确的。但它总是会返回正确的最后一天吗,我不想破坏任何东西。
我按以下方式调用该函数:
getWorkingDaysInMonth(5, 2019); // 5 is June
Run Code Online (Sandbox Code Playgroud)
感谢您的评论。