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

Метод withOffsetSameInstant

Метод withOffsetSameInstant класса OffsetTime возвращает копию объекта времени со смещением с указанным новым смещением, при этом сохраняя тот же самый момент во времени. В параметр мы передаем новое смещение ZoneOffset, к которому нужно адаптировать время.

Импорт

import java.time.OffsetTime import java.time.ZoneOffset

Синтаксис

fun withOffsetSameInstant(offset: ZoneOffset): OffsetTime

Пример

Создадим объект OffsetTime со смещением +03:00 и изменим смещение на +05:00 с сохранением момента:

val originalTime = OffsetTime.of(15, 30, 0, 0, ZoneOffset.ofHours(3)) val newTime = originalTime.withOffsetSameInstant(ZoneOffset.ofHours(5)) println("Original: $originalTime") println("New: $newTime")

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

String "Original: 15:30+03:00" String "New: 17:30+05:00"

Пример

Изменим смещение с положительного на отрицательное:

val time = OffsetTime.of(10, 0, 0, 0, ZoneOffset.ofHours(2)) val adjustedTime = time.withOffsetSameInstant(ZoneOffset.ofHours(-5)) println("Original: $time") println("Adjusted: $adjustedTime")

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

String "Original: 10:00+02:00" String "Adjusted: 03:00-05:00"

Пример

Сравним работу withOffsetSameInstant и withOffsetSameLocal:

val time = OffsetTime.of(20, 45, 0, 0, ZoneOffset.ofHours(1)) val sameInstant = time.withOffsetSameInstant(ZoneOffset.ofHours(4)) val sameLocal = time.withOffsetSameLocal(ZoneOffset.ofHours(4)) println("Original: $time") println("Same Instant: $sameInstant") println("Same Local: $sameLocal")

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

String "Original: 20:45+01:00" String "Same Instant: 23:45+04:00" String "Same Local: 20:45+04:00"

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

  • метод withOffsetSameLocal класса OffsetTime,
    который изменяет смещение без изменения локального времени
  • метод getOffset класса OffsetTime,
    который возвращает текущее смещение времени
  • метод withOffsetSameInstant класса OffsetDateTime,
    который выполняет аналогичную операцию для даты и времени со смещением
  • класс ZoneOffset,
    который представляет смещение времени от UTC
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить