Класс ZoneOffsetTransitionRule
- java.lang.Object
-
- java.time.zone.ZoneOffsetTransitionRule
- Все реализованные интерфейсы:
Serializable
public final class ZoneOffsetTransitionRule extends Object implements Serializable
Правило, определяющее, как создать переход.
Этот класс позволяет выражать правила для определения будущих переходов. Правило может быть записано в нескольких формах:
- 16 марта
- воскресенье на или после 16 марта
- воскресенье на или до 16 марта
- последнее воскресенье февраля
- Требования к реализации:
- Этот класс неизменяемый и потокобезопасный.
- С:
- 1.8
- См. также:
- Сериализованная форма
Вложенные классы
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
ZoneOffsetTransitionRule.TimeDefinition |
Определение способа преобразования местного времени в фактическую дату и время перехода. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
ZoneOffsetTransition |
createTransition(int year) |
Создает экземпляр перехода для указанного года. |
boolean |
equals(Object otherRule) |
Проверяет, равен ли этот объект другому. |
int |
getDayOfMonthIndicator() |
Получает индикатор дня месяца перехода. |
DayOfWeek |
getDayOfWeek() |
Получает день недели перехода. |
LocalTime |
getLocalTime() |
Получает местное время перехода, которое необходимо проверить с помощью |
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() |
Возвращает строку, описывающую этот объект. |
Методы, объявленные в классе java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Методы
of
public static ZoneOffsetTransitionRule of(Month month,
int dayOfMonthIndicator,
DayOfWeek dayOfWeek,
LocalTime time,
boolean timeEndOfDay,
ZoneOffsetTransitionRule.TimeDefinition timeDefnition,
ZoneOffset standardOffset,
ZoneOffset offsetBefore,
ZoneOffset offsetAfter)
Получает экземпляр, определяющий ежегодное правило для создания переходов между двумя смещениями.
Приложения обычно должны получать экземпляр из ZoneRules. Этот фабричный метод предназначен только для использования при создании ZoneRules.
- Параметры:
-
month- месяц месяца-дня первого дня недели перехода, не null -
dayOfMonthIndicator- день месяца-дня недели перехода, положительное значение, если неделя на или после этого дня, отрицательное значение, если неделя на или до этого дня, считая с последнего дня месяца, от -28 до 31, исключая 0 -
dayOfWeek- необходимый день недели, null, если месяц-день не должен изменяться -
time- время перехода в смещении 'до', не null -
timeEndOfDay- указывает ли время полночь в конце дня -
timeDefnition- способ интерпретации перехода -
standardOffset- стандартное смещение, действующее в момент перехода, не null -
offsetBefore- смещение до перехода, не null -
offsetAfter- смещение после перехода, не null - Возвращает:
- правило, не null
- Исключение:
-
IllegalArgumentException- если индикатор дня месяца неверный -
IllegalArgumentException- если флаг конца дня true, а время не полночь -
IllegalArgumentException- еслиtime.getNano()возвращает ненулевое значение
getMonth
public Month getMonth()
Получает месяц перехода.
Если правило определяет точную дату, то месяц — это месяц этой даты.
Если правило определяет неделю, где переход может произойти, то месяц — это месяц либо самой ранней, либо самой поздней возможной даты перехода.
- Возвращает:
- месяц перехода, не null
getDayOfMonthIndicator
public int getDayOfMonthIndicator()
Получает индикатор дня месяца перехода.
Если правило определяет точную дату, то день — это день этой даты.
Если правило определяет неделю, где переход может произойти, то день определяет либо начало, либо конец недели перехода.
Если значение положительное, то оно представляет обычный день месяца и является самой ранней возможной датой перехода. Дата может относиться к 29 февраля, которая должна обрабатываться как 1 марта в не високосных годах.
Если значение отрицательное, то оно представляет количество дней назад от конца месяца, где -1 — последний день месяца. В этом случае определённый день является самой поздней возможной датой перехода.
- Возвращает:
- индикатор дня месяца, от -28 до 31, исключая 0
getDayOfWeek
public DayOfWeek getDayOfWeek()
Получает день недели перехода.
Если правило определяет точную дату, то это возвращает null.
Если правило определяет неделю, где может произойти переход, то этот метод возвращает день недели, к которому будет скорректирован месяц-день. Если день положительный, то корректировка происходит позже. Если день отрицательный, то корректировка происходит раньше.
- Возвращает:
- день недели, когда происходит переход, null, если правило определяет точную дату
getLocalTime
public LocalTime getLocalTime()
Получает местное время перехода, которое необходимо проверить с помощью isMidnightEndOfDay().
Время преобразуется в мгновение с помощью определения времени.
- Возвращает:
- местное время перехода, не null
isMidnightEndOfDay
public boolean isMidnightEndOfDay()
Является ли местное время перехода полночь в конце дня.
Переход может быть представлен как происходящий в 24:00.
- Возвращает:
- указывает ли местное время полночь в начале или конце дня
getTimeDefinition
public ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition()
Получает определение времени, указывающее, как преобразовать время в мгновение.
Местное время можно преобразовать в мгновение, используя стандартное смещение, смещение по часам или UTC.
- Возвращает:
- определение времени, не null
getStandardOffset
public ZoneOffset getStandardOffset()
Получает стандартное смещение, действующее в момент перехода.
- Возвращает:
- стандартное смещение, не null
getOffsetBefore
public ZoneOffset getOffsetBefore()
Получает смещение до перехода.
- Возвращает:
- смещение до, не null
getOffsetAfter
public ZoneOffset getOffsetAfter()
Получает смещение после перехода.
- Возвращает:
- смещение после, не null
createTransition
public ZoneOffsetTransition createTransition(int year)
Создает экземпляр перехода для указанного года.
Вычисления выполняются с использованием хронологии ISO-8601.
- Параметры:
-
year- год для создания перехода, не null - Возвращает:
- экземпляр перехода, не null
equals
public boolean equals(Object otherRule)
Проверяет, равен ли этот объект другому.
Сравнивается всё состояние объекта.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
otherRule- другой объект для сравнения, 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()
Возвращает строку, описывающую этот объект.
© 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/ZoneOffsetTransitionRule.html