Статический метод zone

Статический метод zone класса TemporalQueries возвращает запрос, который извлекает часовой пояс из временного объекта. Если объект содержит информацию о часовом поясе, возвращается ZoneId, иначе возвращается null.

Импорт

kotlinimport java.time.temporal.TemporalQueries

Синтаксис

kotlinstatic fun zone(): TemporalQuery<ZoneId?>

Пример

Получим часовой пояс из объекта ZonedDateTime:

kotlinimport java.time.ZonedDateTime
import java.time.ZoneId
import java.time.temporal.TemporalQueries

val zonedDateTime = ZonedDateTime.now()
val zoneQuery = TemporalQueries.zone()
val zoneId = zonedDateTime.query(zoneQuery)

println("Zone ID: $zoneId")

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

kotlinString "Zone ID: Europe/Moscow"

Пример

Попробуем получить часовой пояс из объекта LocalDateTime, который не содержит информации о часовом поясе:

kotlinimport java.time.LocalDateTime
import java.time.temporal.TemporalQueries

val localDateTime = LocalDateTime.now()
val zoneQuery = TemporalQueries.zone()
val zoneId = localDateTime.query(zoneQuery)

println("Zone ID: $zoneId")

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

kotlinString "Zone ID: null"

Пример

Используем метод zone напрямую в цепочке вызовов:

kotlinimport java.time.ZonedDateTime
import java.time.temporal.TemporalQueries

val zonedDateTime = ZonedDateTime.now()
val zoneId = zonedDateTime.query(TemporalQueries.zone())

println("Zone: ${zoneId?.id}")

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

kotlinString "Zone: Europe/Moscow"

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

  • метод getZone класса ZonedDateTime,
    который возвращает часовой пояс
  • метод offset класса TemporalQueries,
    который возвращает запрос для извлечения смещения
  • метод systemDefault класса ZoneId,
    который возвращает системный часовой пояс по умолчанию
  • класс ZonedDateTime,
    который представляет дату и время с часовым поясом