Статический метод zone
Статический метод zone класса TemporalQueries возвращает запрос, который извлекает часовой пояс из временного объекта.
Если объект содержит информацию о часовом поясе, возвращается ZoneId, иначе возвращается null.
Импорт
import java.time.temporal.TemporalQueries
Синтаксис
static fun zone(): TemporalQuery<ZoneId?>
Пример
Получим часовой пояс из объекта ZonedDateTime:
import 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")
Результат выполнения кода:
String "Zone ID: Europe/Moscow"
Пример
Попробуем получить часовой пояс из объекта LocalDateTime, который не содержит информации о часовом поясе:
import 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")
Результат выполнения кода:
String "Zone ID: null"
Пример
Используем метод zone напрямую в цепочке вызовов:
import java.time.ZonedDateTime
import java.time.temporal.TemporalQueries
val zonedDateTime = ZonedDateTime.now()
val zoneId = zonedDateTime.query(TemporalQueries.zone())
println("Zone: ${zoneId?.id}")
Результат выполнения кода:
String "Zone: Europe/Moscow"
Смотрите также
-
метод
getZoneклассаZonedDateTime,
который возвращает часовой пояс -
метод
offsetклассаTemporalQueries,
который возвращает запрос для извлечения смещения -
метод
systemDefaultклассаZoneId,
который возвращает системный часовой пояс по умолчанию -
класс
ZonedDateTime,
который представляет дату и время с часовым поясом