0

为什么我得到 31 而不是 3?现在是 12 月,所以之前的 11 月 = 30。

Calendar calendarPreviousMonth = Calendar.getInstance();
        calendarPreviousMonth.add(Calendar.MONTH, calendarCurrent.get(Calendar.MONTH) - 1);
        System.out.println("Amount of days in month " + calendarPreviousMonth.getActualMaximum(Calendar.DAY_OF_MONTH));

谢谢!

4

2 回答 2

6

上个月要查找的代码应如下所示:

calendarPreviousMonth.add(Calendar.MONTH, -1);
于 2012-12-01T12:29:17.357 回答
0

这是错误的:

calendarPreviousMonth.add(Calendar.MONTH, calendarCurrent.get(Calendar.MONTH)-1)

您要么想要添加-1到月份,要么将其设置为calendarCurrent.get(Calendar.MONTH) - 1. 不是都!试试这个:

calendarPreviousMonth.add(Calendar.MONTH, -1);

或者这个:

calendarPreviousMonth.set(Calendar.MONTH, calendarCurrent.get(Calendar.MONTH)-1)
于 2012-12-01T12:32:00.170 回答