Java Calendar类时间跨年操作请注意事项

使用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)
          根据日历的规则,为给定的日历字段添加或减去指定的时间量。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值