使用roll(Calendar.WEEK_OF_YEAR, false)时,时间的范围仅在当前Calendar所在的年,跨年时无法推进到其它年度,例如向前推七天,这时只能使用add(Calendar.DAY_OF_YEAR, -7)或add(Calendar.WEEK_OF_YEAR, -1)。
roll(f, delta)
将 delta
添加到 f
字段中,但不更改更大的字段。
void | roll (int field, boolean up) 在给定的时间字段上添加或减去(上/下)单个时间单元,不更改更大的字段。 |
void | roll (int field, int amount) 向指定日历字段添加指定(有符号的)时间量,不更改更大的字段。 |
<!-- Generated by javadoc (build 1.6.0-beta2) on Mon Mar 19 18:26:15 CST 2007 -->
<noscript></noscript>add(f, delta)
将 delta
添加到 f
字段中。这等同于调用 set(f, get(f) + delta)
,但要带以下两个调整:
Add 规则 1 。调用后 f
字段的值减去调用前 f
字段的值等于 delta
,以字段 f
中发生的任何溢出为模。溢出发生在字段值超出其范围时,结果,下一个更大的字段会递增或递减,并将字段值调整回其范围内。
abstract void
add (int field, int amount)
根据日历的规则,为给定的日历字段添加或减去指定的时间量。