Java.util.GregorianCalendar.roll() Java.util.GregorianCalendar.roll() Java.util.GregorianCalendar.set GregorianChange() 描述 所述java.util.GregorianCalendar.roll(int field,int amount)方法增加了一个签名的量来指定日历字段不更改更大的领域。负滚动量意味着在不改变较大字段的情况下从字段中减去。如果指定的数量为0,则此方法不执行任何操作。 声明 以下是java.util.GregorianCalendar.roll()方法的声明 public void roll(int field,int amount) 参数 field - 日历字段。 amount - 要添加到字段的签名金额。 返回值 此方法不返回值。 异常 IllegalArgumentException - 如果字段为ZONE_OFFSET,DST_OFFSET或未知,或者任何日历字段在非宽松模式下具有超出范围的值。 实例 以下示例显示了java.util.GregorianCalendar.roll()方法的用法。 package com.tutorialspoint; import java.util.*; public class GregorianCalendarDemo { public static void main(String[] args) { // create a new calendar GregorianCalendar cal = (GregorianCalendar) GregorianCalendar.getInstance(); // print the current date and time System.out.println("" + cal.getTime()); // roll 2 months cal.roll(GregorianCalendar.MONTH, 2); System.out.println("Date:" + cal.getTime()); // roll 5 year backwards cal.roll(GregorianCalendar.YEAR, -5); System.out.println("Date:" + cal.getTime()); } } 让我们编译并运行上面的程序,这将产生以下结果 Fri May 18 13:36:46 EEST 2012 Date:Wed Jul 18 13:36:46 EEST 2012 Date:Wed Jul 18 13:36:46 EEST 2007 Java.util.GregorianCalendar.roll() Java.util.GregorianCalendar.set GregorianChange()