小编Ali*_*a17的帖子

java.util.Calendar getMaximum 最后一天返回错误

我必须修复一些代码。由于某种原因,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)

感谢您的评论。

java calendar date

1
推荐指数
1
解决办法
1317
查看次数

标签 统计

calendar ×1

date ×1

java ×1