НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
897 of 1310 menu

Метод normalized

Метод normalized класса ZoneId проверяет, является ли текущий объект ZoneOffset и, если это так, возвращает его. Если объект не является ZoneOffset, метод возвращает его без изменений. Этот метод полезен, когда необходимо гарантировать, что ZoneId может быть безопасно использован в APIs, требующих ZoneOffset.

Импорт

import java.time.ZoneId import java.time.ZoneOffset

Синтаксис

fun normalized(): ZoneId

Пример

Нормализуем ZoneOffset UTC:

val zoneOffset = ZoneOffset.UTC val normalizedZone = zoneOffset.normalized() println(normalizedZone)

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

String "Z"

Пример

Нормализуем обычный ZoneId (не ZoneOffset):

val zoneId = ZoneId.of("Europe/London") val normalizedZone = zoneId.normalized() println(normalizedZone)

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

String "Europe/London"

Пример

Сравним поведение normalized для разных типов ZoneId:

val offsetId = ZoneId.of("+02:00") val regionId = ZoneId.of("Europe/Paris") val normalizedOffset = offsetId.normalized() val normalizedRegion = regionId.normalized() println("Original offset: $offsetId, Normalized: $normalizedOffset") println("Original region: $regionId, Normalized: $normalizedRegion")

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

String "Original offset: +02:00, Normalized: +02:00" String "Original region: Europe/Paris, Normalized: Europe/Paris"

Пример

Проверим, что нормализованный ZoneOffset можно безопасно использовать в методах, требующих ZoneOffset:

val zoneId = ZoneId.of("+05:00") val normalized = zoneId.normalized() if (normalized is ZoneOffset) { val totalSeconds = normalized.totalSeconds println("Total seconds: $totalSeconds") } else { println("Not a ZoneOffset") }

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

String "Total seconds: 18000"

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

  • функцию of класса ZoneId,
    которая создает ZoneId из строкового идентификатора
  • функцию systemDefault класса ZoneId,
    которая возвращает системный часовой пояс по умолчанию
  • функцию of класса ZoneOffset,
    которая создает ZoneOffset из смещения
  • класс ZonedDateTime,
    который представляет дату и время с часовым поясом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить