АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
861 of 1310 menu
Вступайте в телеграмм-канал сайта code.mu: новинки, статьи, интервью, задачи, бесплатные курсы и тренинги. Жми для вступления:)

Функция toInstant

Функция toInstant класса OffsetDateTime преобразует объект с датой, временем и смещением в объект Instant, который представляет собой момент времени на временной шкале UTC. Преобразование учитывает смещение часового пояса, чтобы получить корректное значение Instant.

Импорт

import java.time.OffsetDateTime import java.time.Instant

Синтаксис

fun toInstant(): Instant

Пример

Преобразуем объект OffsetDateTime в Instant:

val offsetDateTime = OffsetDateTime.parse("2025-07-15T10:30:45+03:00") val instant = offsetDateTime.toInstant() println(instant)

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

Instant "2025-07-15T07:30:45Z"

Пример

Сравним преобразование с разными смещениями часовых поясов:

val odt1 = OffsetDateTime.parse("2025-12-31T23:00:00+02:00") val odt2 = OffsetDateTime.parse("2025-12-31T22:00:00+01:00") val instant1 = odt1.toInstant() val instant2 = odt2.toInstant() println("Instant 1: $instant1") println("Instant 2: $instant2") println("Are equal: ${instant1 == instant2}")

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

String "Instant 1: 2025-12-31T21:00:00Z" String "Instant 2: 2025-12-31T21:00:00Z" String "Are equal: true"

Пример

Получим компоненты Instant после преобразования:

val offsetDateTime = OffsetDateTime.parse("2025-03-20T15:45:30-05:00") val instant = offsetDateTime.toInstant() val seconds = instant.epochSecond val nanos = instant.nano println("Epoch seconds: $seconds") println("Nanoseconds: $nanos")

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

String "Epoch seconds: 1742489130" String "Nanoseconds: 0"

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

  • функцию now класса OffsetDateTime,
    которая возвращает текущие дату и время со смещением
  • функцию parse класса OffsetDateTime,
    которая преобразует строку в OffsetDateTime
  • функцию toInstant класса ZonedDateTime,
    которая преобразует ZonedDateTime в Instant
  • класс Instant,
    который представляет момент времени на временной шкале UTC