Метод getOffset

Метод getOffset класса OffsetTime возвращает объект ZoneOffset, представляющий смещение времени от UTC. Метод не принимает параметров и возвращает смещение, которое было установлено при создании объекта OffsetTime.

Импорт

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

Синтаксис

kotlinfun getOffset(): ZoneOffset

Пример

Создадим объект OffsetTime со смещением +03:00 и получим его смещение:

kotlinval time = OffsetTime.of(15, 30, 0, 0, ZoneOffset.ofHours(3))
val offset = time.getOffset()
println(offset)

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

kotlinString "+03:00"

Пример

Создадим объект OffsetTime со смещением -05:00 и проверим его свойства:

kotlinval time = OffsetTime.of(10, 15, 30, 0, ZoneOffset.ofHours(-5))
val offset = time.getOffset()
val totalSeconds = offset.totalSeconds
println("Offset: $offset, Total seconds: $totalSeconds")

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

kotlinString "Offset: -05:00, Total seconds: -18000"

Пример

Сравним смещения двух разных объектов OffsetTime:

kotlinval time1 = OffsetTime.of(12, 0, 0, 0, ZoneOffset.of("+02:00"))
val time2 = OffsetTime.of(12, 0, 0, 0, ZoneOffset.of("+05:30"))

val offset1 = time1.getOffset()
val offset2 = time2.getOffset()

println("First offset: $offset1")
println("Second offset: $offset2")
println("Offsets equal: ${offset1 == offset2}")

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

kotlinString "First offset: +02:00"
String "Second offset: +05:30"
String "Offsets equal: false"

Пример

Используем смещение для преобразования времени в UTC:

kotlinval localTime = OffsetTime.of(20, 45, 0, 0, ZoneOffset.ofHours(2))
val offset = localTime.getOffset()
val utcTime = localTime.minusSeconds(offset.totalSeconds.toLong())

println("Local time: $localTime")
println("UTC time: ${utcTime.toLocalTime()}")

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

kotlinString "Local time: 20:45+02:00"
String "UTC time: 18:45"

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

  • метод of класса OffsetTime,
    который создает время со смещением из компонентов
  • метод getHour класса OffsetTime,
    который возвращает час времени
  • метод toLocalTime класса OffsetTime,
    который возвращает локальное время без смещения
  • класс ZoneOffset,
    который представляет смещение от UTC