Функция now

Функция now класса OffsetTime возвращает текущее время со смещением от UTC, полученное из системных часов. Функция может быть вызвана без параметров для получения времени в системном часовом поясе, либо с параметром ZoneId для указания конкретного часового пояса, а также с параметром Clock для использования специальных часов.

Импорт

kotlinimport java.time.OffsetTime
import java.time.ZoneId
import java.time.Clock

Синтаксис

kotlinfun now(): OffsetTime
kotlinfun now(zone: ZoneId): OffsetTime
kotlinfun now(clock: Clock): OffsetTime

Пример

Получим текущее время со смещением в системном часовом поясе:

kotlinval currentTime = OffsetTime.now()
println(currentTime)

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

kotlinString "15:30:45.123+03:00"

Пример

Получим текущее время со смещением для конкретного часового пояса:

kotlinval zone = ZoneId.of("Europe/London")
val londonTime = OffsetTime.now(zone)
println(londonTime)

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

kotlinString "12:30:45.123+01:00"

Пример

Используем фиксированные часы для тестирования:

kotlinval fixedClock = Clock.fixed(
  Instant.parse("2025-07-15T10:30:00Z"),
  ZoneId.of("UTC")
)
val fixedTime = OffsetTime.now(fixedClock)
println(fixedTime)

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

kotlinString "10:30:00Z"

Пример

Получим отдельные компоненты времени после вызова функции:

kotlinval currentTime = OffsetTime.now()

val hour = currentTime.hour
val minute = currentTime.minute
val second = currentTime.second
val offset = currentTime.offset

println("Hour: $hour, Minute: $minute, Second: $second, Offset: $offset")

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

kotlinString "Hour: 15, Minute: 30, Second: 45, Offset: +03:00"

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

  • функцию of класса OffsetTime,
    которая создает время со смещением из компонентов
  • функцию now класса LocalTime,
    которая возвращает текущее локальное время
  • функцию now класса OffsetDateTime,
    которая возвращает текущую дату и время со смещением
  • класс ZoneId,
    который представляет идентификатор часового пояса