Функция plus

Функция plus класса ZonedDateTime прибавляет указанный период времени к текущему объекту даты и времени с учетом правил часового пояса. В первый параметр мы передаем количество единиц времени для прибавления, во второй параметр указываем тип единицы времени из перечисления ChronoUnit. Также функция имеет перегруженные версии для прибавления объектов Period и Duration.

Импорт

kotlinimport java.time.ZonedDateTime
import java.time.temporal.ChronoUnit
import java.time.Period
import java.time.Duration

Синтаксис

kotlinfun plus(amountToAdd: Long, unit: TemporalUnit): ZonedDateTime
kotlinfun plus(amount: TemporalAmount): ZonedDateTime

Пример

Прибавим 5 дней к дате и времени "2025-03-15T10:30:00+03:00[Europe/Moscow]":

kotlinval original = ZonedDateTime.parse("2025-03-15T10:30:00+03:00[Europe/Moscow]")
val result = original.plus(5, ChronoUnit.DAYS)
println(result)

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

kotlinString "2025-03-20T10:30:00+03:00[Europe/Moscow]"

Пример

Прибавим 2 часа к дате и времени:

kotlinval original = ZonedDateTime.parse("2025-07-10T14:45:00-05:00[America/New_York]")
val result = original.plus(2, ChronoUnit.HOURS)
println(result)

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

kotlinString "2025-07-10T16:45:00-05:00[America/New_York]"

Пример

Прибавим период из 1 месяца и 10 дней с помощью объекта Period:

kotlinval original = ZonedDateTime.parse("2025-01-20T08:00:00+01:00[Europe/Paris]")
val period = Period.of(0, 1, 10)
val result = original.plus(period)
println(result)

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

kotlinString "2025-03-02T08:00:00+01:00[Europe/Paris]"

Пример

Прибавим продолжительность из 90 минут с помощью объекта Duration:

kotlinval original = ZonedDateTime.parse("2025-12-31T23:30:00+09:00[Asia/Tokyo]")
val duration = Duration.ofMinutes(90)
val result = original.plus(duration)
println(result)

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

kotlinString "2026-01-01T01:00:00+09:00[Asia/Tokyo]"

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

  • функцию minus класса ZonedDateTime,
    которая вычитает период из даты и времени
  • функцию with класса ZonedDateTime,
    которая устанавливает конкретное значение поля даты-времени
  • класс Period,
    который представляет период в годах, месяцах и днях
  • класс Duration,
    который представляет продолжительность в секундах и наносекундах