Java 日历卷是否围绕给定的年、月等进行?

Java 日历卷是否围绕给定的年、月等进行?,java,calendar,utility,Java,Calendar,Utility,假设我有以下代码: //someParameterizedDate = New Years Eve 2011 Calendar cal = new GregorianCalendar(); cal.setTime(someParameterizedDate); cal.roll(Calendar.DAY_OF_YEAR, 1); 现在的日历是否等于2012年1月1日?我发现所有的Javadoc都有点混乱。 滚动(f,增量)将增量添加到字段f,而不更改较大的字段。 这相当于使用以下命令调用add

假设我有以下代码:

//someParameterizedDate = New Years Eve 2011
Calendar cal = new GregorianCalendar();
cal.setTime(someParameterizedDate);
cal.roll(Calendar.DAY_OF_YEAR, 1);
现在的日历是否等于2012年1月1日?我发现所有的Javadoc都有点混乱。

滚动(f,增量)将增量添加到字段f,而不更改较大的字段。 这相当于使用以下命令调用add(f,delta) 调整:

滚尺。较大的字段在调用后保持不变。更大的领域 表示更大的时间单位。月的日比月的日大 小时

您使用年中的
滚动,这意味着它不会影响
这两个较大的单位

所以基本上,你应该到2011年12月1日

如果要将其设置为2012年1月1日,可以使用
add