Класс ZoneOffsetTransition

Все реализованные интерфейсы:
Serializable, Comparable<ZoneOffsetTransition>
public final class ZoneOffsetTransition
extends Object
implements Comparable<ZoneOffsetTransition>, Serializable

Переход между двумя смещениями, вызванный разрывом в локальной временной шкале.

Переход между двумя смещениями обычно является результатом перехода на летнее время. Разрыв обычно представляет собой разрыв весной и перекрытие осенью. ZoneOffsetTransition моделирует переход между двумя смещениями.

Разрывы возникают там, где локальных дат и времен просто не существует. Примером может служить изменение смещения с +03:00 на +04:00. Это можно описать как «сегодня ночью в 1:00 часы переведут на час вперёд».

Перекрытия возникают там, где локальные даты и время существуют дважды. Примером может служить изменение смещения с +04:00 на +03:00. Это можно описать как «сегодня ночью в 2:00 часы переведут на час назад».

Требования к реализации:
Этот класс неизменяемый и потокобезопасный.
С:
1.8
См. также:
Сериализованная форма

Методы

Модификатор и тип Метод Описание
int compareTo​(ZoneOffsetTransition transition)

Сравнивает этот переход с другим на основе момента перехода.

boolean equals​(Object other)

Проверяет, равен ли этот объект другому.

LocalDateTime getDateTimeAfter()

Получает локальную дату и время перехода, как если бы она была выражена со смещением «после».

LocalDateTime getDateTimeBefore()

Получает локальную дату и время перехода, как если бы она была выражена со смещением «до».

Duration getDuration()

Получает продолжительность перехода.

Instant getInstant()

Получает момент перехода.

ZoneOffset getOffsetAfter()

Получает смещение после перехода.

ZoneOffset getOffsetBefore()

Получает смещение до перехода.

int hashCode()

Возвращает подходящий хэш-код.

boolean isGap()

Представляет ли этот переход разрыв в локальной временной шкале.

boolean isOverlap()

Представляет ли этот переход перекрытие в локальной временной шкале.

boolean isValidOffset​(ZoneOffset offset)

Проверяет, является ли указанное смещение допустимым во время этого перехода.

static ZoneOffsetTransition of​(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter)

Получает экземпляр, определяющий переход между двумя смещениями.

long toEpochSecond()

Получает момент перехода как эпохальную секунду.

String toString()

Возвращает строку, описывающую этот объект.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Методы

of

public static ZoneOffsetTransition of(LocalDateTime transition,
                                      ZoneOffset offsetBefore,
                                      ZoneOffset offsetAfter)

Получает экземпляр, определяющий переход между двумя смещениями.

Приложения обычно должны получать экземпляр из ZoneRules. Этот фабричный метод предназначен только для использования при создании ZoneRules.

Параметры:
transition - дата и время перехода в момент перехода, который никогда не происходит, выраженное локально относительно смещения «до», не null
offsetBefore - смещение до перехода, не null
offsetAfter - смещение в момент и после перехода, не null
Возвращает:
переход, не null
Исключения:
IllegalArgumentException - если offsetBefore и offsetAfter равны или transition.getNano() возвращает ненулевое значение

getInstant

public Instant getInstant()

Получает момент перехода.

Это момент разрыва, который определяется как первый момент, когда применяется смещение «после».

Методы getInstant(), getDateTimeBefore() и getDateTimeAfter() все представляют один и тот же момент.

Возвращает:
момент перехода, не null

toEpochSecond

public long toEpochSecond()

Получает момент перехода как эпохальную секунду.

Возвращает:
эпохальная секунда перехода

getDateTimeBefore

public LocalDateTime getDateTimeBefore()

Получает локальную дату и время перехода, как если бы она была выражена со смещением «до».

Это дата и время, где начинается разрыв, выраженная со смещением «до». В этот момент фактически используется смещение «после», поэтому сочетание этой даты и времени и смещения «до» никогда не произойдёт.

Сочетание даты и времени «до» и смещения представляет тот же момент, что и дата и время «после» и смещение.

Возвращает:
дата и время перехода, выраженное со смещением до, не null

getDateTimeAfter

public LocalDateTime getDateTimeAfter()

Получает локальную дату и время перехода, как если бы она была выражена со смещением «после».

Это первая дата и время после разрыва, когда применяется новое смещение.

Сочетание даты и времени «до» и смещения представляет тот же момент, что и дата и время «после» и смещение.

Возвращает:
дата и время перехода, выраженное со смещением после, не null

getOffsetBefore

public ZoneOffset getOffsetBefore()

Получает смещение до перехода.

Это смещение, используемое до момента перехода.

Возвращает:
смещение до перехода, не null

getOffsetAfter

public ZoneOffset getOffsetAfter()

Получает смещение после перехода.

Это смещение, используемое в момент и после момента перехода.

Возвращает:
смещение после перехода, не null

getDuration

public Duration getDuration()

Получает продолжительность перехода.

В большинстве случаев продолжительность перехода составляет один час, однако это не всегда так. Продолжительность будет положительной для разрыва и отрицательной для перекрытия. Временные зоны основаны на секундах, поэтому наносекундная часть продолжительности будет равна нулю.

Возвращает:
продолжительность перехода, положительная для разрывов, отрицательная для перекрытий

isGap

public boolean isGap()

Представляет ли этот переход разрыв в локальной временной шкале.

Разрывы возникают там, где локальных дат и времен просто не существует. Примером может служить изменение смещения с +01:00 на +02:00. Это можно описать как «сегодня ночью в 1:00 часы переведут на час вперёд».

Возвращает:
true, если этот переход является разрывом, false, если это перекрытие

isOverlap

public boolean isOverlap()

Представляет ли этот переход перекрытие в локальной временной шкале.

Перекрытия возникают там, где локальные даты и время существуют дважды. Примером может служить изменение смещения с +02:00 на +01:00. Это можно описать как «сегодня ночью в 2:00 часы переведут на час назад».

Возвращает:
true, если этот переход является перекрытием, false, если это разрыв

isValidOffset

public boolean isValidOffset(ZoneOffset offset)

Проверяет, является ли указанное смещение допустимым во время этого перехода.

Это проверяет, будет ли данное смещение допустимым в какой-то момент перехода. Разрыв всегда вернёт false. Перекрытие вернёт true, если смещение — это либо смещение до, либо смещение после.

Параметры:
offset - смещение для проверки, null возвращает false
Возвращает:
true, если смещение допустимо во время перехода

compareTo

public int compareTo(ZoneOffsetTransition transition)

Сравнивает этот переход с другим на основе момента перехода.

Это сравнивает моменты каждого перехода. Смещения игнорируются, что делает этот порядок несовместимым с equals.

Определено в:
compareTo в интерфейсе Comparable<ZoneOffsetTransition>
Параметры:
transition - переход для сравнения, не null
Возвращает:
значение компаратора, отрицательное, если меньше, положительное, если больше

equals

public boolean equals(Object other)

Проверяет, равен ли этот объект другому.

Сравнивается всё состояние объекта.

Переопределяет:
equals в классе Object
Параметры:
other - другой объект для сравнения, null возвращает false
Возвращает:
true, если равны
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает подходящий хэш-код.

Переопределяет:
hashCode в классе Object
Возвращает:
хэш-код
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

toString

public String toString()

Возвращает строку, описывающую этот объект.

Переопределяет:
toString в классе Object
Возвращает:
строка для отладки, не null

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/zone/ZoneOffsetTransition.html

Spec-Zone .ru
спецификации, руководства, описания, API