Метод getRules

Метод getRules класса ZoneId возвращает объект ZoneRules, содержащий правила для временной зоны. Эти правила включают информацию о стандартном смещении, переходе на летнее время и исторических изменениях временной зоны.

Импорт

kotlinimport java.time.ZoneId
import java.time.zone.ZoneRules

Синтаксис

kotlinfun getRules(): ZoneRules

Пример

Получим правила для временной зоны "Europe/Moscow":

kotlinval zoneId = ZoneId.of("Europe/Moscow")
val rules = zoneId.getRules()
println(rules)

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

kotlinZoneRules Europe/Moscow

Пример

Проверим, является ли смещение фиксированным для зоны "UTC":

kotlinval zoneId = ZoneId.of("UTC")
val rules = zoneId.getRules()
val isFixed = rules.isFixedOffset()
println("Is fixed offset: $isFixed")

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

kotlinString "Is fixed offset: true"

Пример

Получим стандартное смещение для зоны "America/New_York":

kotlinval zoneId = ZoneId.of("America/New_York")
val rules = zoneId.getRules()
val standardOffset = rules.getStandardOffset(java.time.Instant.now())
println("Standard offset: $standardOffset")

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

kotlinString "Standard offset: -05:00"

Пример

Проверим, действует ли летнее время в зоне "Europe/London" в текущий момент:

kotlinval zoneId = ZoneId.of("Europe/London")
val rules = zoneId.getRules()
val isDst = rules.isDaylightSavings(java.time.Instant.now())
println("Is daylight saving: $isDst")

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

kotlinString "Is daylight saving: true"

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

  • метод of класса ZoneId,
    который создает объект временной зоны по идентификатору
  • метод systemDefault класса ZoneId,
    который возвращает системную временную зону
  • метод getRules класса ZoneOffset,
    который возвращает правила для смещения временной зоны
  • класс ZonedDateTime,
    который представляет дату и время с временной зоной