读书人

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

发布时间: 2012-12-19 14:13:14 作者: rapoo

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 字段中,但不更改更大的字段。

voidroll(int?field, boolean?up)
??????????在给定的时间字段上添加或减去(上/下)单个时间单元,不更改更大的字段。?voidroll(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 ?voidadd(int?field, int?amount)
??????????根据日历的规则,为给定的日历字段添加或减去指定的时间量。

?

读书人网 >编程

热点推荐