Calendar的两个方法的比较
1:Calendar.getInstance().add(int field,int amount);
2:Calendar.getInstance().roll(int field,int amount);
***向指定日历字段添加指定(有符号的)时间量,不更改更大的字段。
这里所说的不更改更大的字段,是什么意思?
1:Calendar.getInstance().add(int field,int amount);
2:Calendar.getInstance().roll(int field,int amount);
***向指定日历字段添加指定(有符号的)时间量,不更改更大的字段。
这里所说的不更改更大的字段,是什么意思?
如果是 roll 10 天,月份不会变动,只有日期变动,成了 3 月 10 日,即取消进位处理。
Calendar calendar = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
calendar.set(2007, Calendar.JANUARY, 30);
calendar.set(Calendar.MONTH, 13);//2008-03-01
// calendar.add(Calendar.MONTH, 13);//2008-02-29
// calendar.roll(Calendar.MONTH, 13);//2007-02-28
System.out.println(format.format(calendar.getTime()));