Функция isFixedOffset

Функция isFixedOffset класса ZoneRules возвращает true, если правила часового пояса используют фиксированное смещение от UTC. Это означает, что в данном часовом поясе не действует переход на летнее время и смещение постоянно.

Импорт

kotlinimport java.time.zone.ZoneRules

Синтаксис

kotlinfun isFixedOffset(): Boolean

Пример

Проверим, имеет ли часовой пояс UTC фиксированное смещение:

kotlinval zoneRules = ZoneRules.of(ZoneOffset.UTC)
val res = zoneRules.isFixedOffset()
println(res)

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

kotlinBoolean true

Пример

Проверим, имеет ли часовой пояс Европы/Москвы фиксированное смещение:

kotlinval zoneRules = ZoneId.of("Europe/Moscow").getRules()
val res = zoneRules.isFixedOffset()
println(res)

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

kotlinBoolean false

Пример

Сравним несколько часовых поясов на наличие фиксированного смещения:

kotlinval zones = listOf("UTC", "GMT+03:00", "Europe/London", "Asia/Tokyo")

for (zoneId in zones) {
  val rules = ZoneId.of(zoneId).getRules()
  val isFixed = rules.isFixedOffset()
  println("$zoneId: $isFixed")
}

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

kotlinString "UTC: true"
String "GMT+03:00: true"
String "Europe/London: false"
String "Asia/Tokyo: false"

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

  • функцию getOffset класса ZoneRules,
    которая возвращает смещение для указанной даты и времени
  • функцию getStandardOffset класса ZoneRules,
    которая возвращает стандартное смещение часового пояса
  • функцию isDaylightSavings класса ZoneRules,
    которая проверяет действует ли летнее время для указанной даты и времени
  • класс ZoneId,
    который представляет идентификатор часового пояса