Метод getRules

Метод getRules класса ZoneOffset возвращает объект ZoneRules, содержащий правила временной зоны для данного фиксированного смещения. Метод не принимает параметров и всегда возвращает правила, соответствующие постоянному смещению от UTC.

Импорт

kotlinimport java.time.ZoneOffset
import java.time.zone.ZoneRules

Синтаксис

kotlinfun getRules(): ZoneRules

Пример

Получим правила для смещения UTC+3:

kotlinval offset = ZoneOffset.ofHours(3)
val rules = offset.getRules()

println("Is fixed offset: " + rules.isFixedOffset())
println("Standard offset: " + rules.getStandardOffset(null))

Результат выполнения кода:

kotlinString "Is fixed offset: true"
String "Standard offset: +03:00"

Пример

Проверим, является ли смещение фиксированным и поддерживает ли переход на летнее время:

kotlinval offset = ZoneOffset.of("+05:00")
val rules = offset.getRules()

val isFixed = rules.isFixedOffset()
val hasDST = rules.isDaylightSavings(null)

println("Fixed offset: $isFixed")
println("Has daylight savings: $hasDST")

Результат выполнения кода:

kotlinString "Fixed offset: true"
String "Has daylight savings: false"

Пример

Сравним правила для разных смещений:

kotlinval offset1 = ZoneOffset.UTC
val offset2 = ZoneOffset.ofHours(-5)

val rules1 = offset1.getRules()
val rules2 = offset2.getRules()

println("UTC is fixed: " + rules1.isFixedOffset())
println("UTC-5 is fixed: " + rules2.isFixedOffset())
println("UTC standard offset: " + rules1.getStandardOffset(null))
println("UTC-5 standard offset: " + rules2.getStandardOffset(null))

Результат выполнения кода:

kotlinString "UTC is fixed: true"
String "UTC-5 is fixed: true"
String "UTC standard offset: Z"
String "UTC-5 standard offset: -05:00"

Смотрите также

  • метод of класса ZoneOffset,
    который создает смещение из строки
  • метод getTotalSeconds класса ZoneOffset,
    который возвращает общее количество секунд смещения
  • класс ZoneRules,
    который содержит правила временной зоны
  • метод getRules класса ZoneId,
    который возвращает правила для идентификатора зоны