1

我正在创建一个java.util.Calendar类的实例:

Calendar rightNow = Calendar.getInstance();

getInstance()得到一个Calendar使用默认时区和语言环境...它现在在波兰的 20:22 1.11.2012,但是当我打印rightNow出字段时,结果是错误的:

System.out.print(rightNow.get(Calendar.MONTH));
result: 10.

System.out.print(rightNow.get(Calendar.DAY_OF_MONTH));
result: 1.

System.out.print(rightNow.get(Calendar.DATE));
result: 1.

我想在 12 月该YEAR领域也将是错误的。有人可以向我解释一下吗?

4

1 回答 1

7

当您使用日历而不是从 1 时,月份从 0 开始

根据javadoc

get 和 set 的字段编号,指示月份。这是特定于日历的值。公历和儒略历中的第一个月是 JANUARY,即 0;最后一个取决于一年中的月数。

于 2012-11-01T19:31:47.710 回答