public final class ZoneOffsetTransitionRule extends Object implements Serializable
该类允许表达未来转换的规则。 一个规则可以写成许多形式:
Modifier and Type | Class and Description |
---|---|
static class |
ZoneOffsetTransitionRule.TimeDefinition
本地时间可以转换为实际转换日期时间的方式的定义。
|
Modifier and Type | Method and Description |
---|---|
ZoneOffsetTransition |
createTransition(int year)
创建指定年份的转换实例。
|
boolean |
equals(Object otherRule)
检查这个对象是否等于另一个。
|
int |
getDayOfMonthIndicator()
获得转型月份的指标。
|
DayOfWeek |
getDayOfWeek()
获得过渡的星期几。
|
LocalTime |
getLocalTime()
获得必须用
isMidnightEndOfDay() 进行检查的
当地时间 。
|
Month |
getMonth()
获得过渡的月份。
|
ZoneOffset |
getOffsetAfter()
获得转换后的偏移量。
|
ZoneOffset |
getOffsetBefore()
在转换之前获取偏移量。
|
ZoneOffset |
getStandardOffset()
在转换时获得有效的标准偏移量。
|
ZoneOffsetTransitionRule.TimeDefinition |
getTimeDefinition()
获取时间定义,指定如何将时间转换为即时。
|
int |
hashCode()
返回一个合适的哈希码。
|
boolean |
isMidnightEndOfDay()
当天的时间是午夜的过渡时间。
|
static ZoneOffsetTransitionRule |
of(Month month, int dayOfMonthIndicator, DayOfWeek dayOfWeek, LocalTime time, boolean timeEndOfDay, ZoneOffsetTransitionRule.TimeDefinition timeDefnition, ZoneOffset standardOffset, ZoneOffset offsetBefore, ZoneOffset offsetAfter)
获取定义年度规则以在两个偏移之间创建转换的实例。
|
String |
toString()
返回描述此对象的字符串。
|
public static ZoneOffsetTransitionRule of(Month month, int dayOfMonthIndicator, DayOfWeek dayOfWeek, LocalTime time, boolean timeEndOfDay, ZoneOffsetTransitionRule.TimeDefinition timeDefnition, ZoneOffset standardOffset, ZoneOffset offsetBefore, ZoneOffset offsetAfter)
month
- 割接周的第一天的月 - 日的月份,不为空
dayOfMonthIndicator
- 切割周的月日的当天,如果一周是当天或以后,则为正数,如果周为当天或更早,则为负数,从该月的最后一天开始,从-28减去31除外0
dayOfWeek
- 所需的星期几,如果月日不应该更改,则为null
time
- 'before'偏移中的割接时间,不为空
timeEndOfDay
- 时间是否在一天结束时的午夜
timeDefnition
- 如何解释割接
standardOffset
- 割接时的标准偏移量,不为空
offsetBefore
- 割接前的偏移量,不为空
offsetAfter
- 割接后的偏移量,不为空
IllegalArgumentException
- 如果日期指标无效
IllegalArgumentException
- 当时间不是午夜时,如果结束日标志为真
public Month getMonth()
如果规则定义了确切的日期,则该月份是该日期的月份。
如果规则定义了可能发生转换的一周,那么月份是割接的最早或最晚可能日期的月份。
public int getDayOfMonthIndicator()
如果规则定义了确切的日期,则该日期是该日期的月份。
如果规则定义了可能发生转换的一周,则该日期定义转换周期结束的开始。
如果值为正值,则表示正常的日期,并且是过渡可能的最早可能的日期。 日期可能指的是2月29日,应在非闰年内被视为3月1日。
如果值为负数,则表示从月底的最后一天的-1
的天数。 在这种情况下,确定的日期是过渡可能的最新日期。
public DayOfWeek getDayOfWeek()
如果规则定义了一个确切的日期,那么这将返回null。
如果规则定义了可能发生割接的一周,则此方法将返回月日将被调整到的星期几。 如果当天是正面的,那么调整是晚了。 如果一天是负数,则调整较早。
public LocalTime getLocalTime()
isMidnightEndOfDay()
进行检查的当地时间 。
使用时间定义将时间转换成即时。
public boolean isMidnightEndOfDay()
转换可能表示为发生在24:00。
public ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition()
当地时间可以使用标准偏移量,壁偏移或UTC转换为即时。
public ZoneOffset getStandardOffset()
public ZoneOffset getOffsetBefore()
public ZoneOffset getOffsetAfter()
public ZoneOffsetTransition createTransition(int year)
使用ISO-8601年表进行计算。
year
- 创建
year
的一年,不为null
public boolean equals(Object otherRule)
比较对象的整个状态。
equals
在
Object
otherRule
- 要比较的其他对象,null返回false
Object.hashCode()
, HashMap
public int hashCode()
hashCode
在
Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)