Функция parse

Функция parse класса Period преобразует строку в формате PnYnMnDTnHnMnS или PnW в объект Period. В параметр мы передаем строку для преобразования, которая представляет собой период в стандартном формате ISO-8601.

Импорт

kotlinimport java.time.Period

Синтаксис

kotlinfun parse(text: CharSequence): Period

Пример

Преобразуем строку "P2Y3M15D" в объект Period:

kotlinval periodStr = "P2Y3M15D"
val period = Period.parse(periodStr)
println(period)

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

kotlinString "P2Y3M15D"

Пример

Создадим период из строки "P1Y6M" и получим его компоненты:

kotlinval periodStr = "P1Y6M"
val period = Period.parse(periodStr)

val years = period.years
val months = period.months
val days = period.days

println("Years: $years, Months: $months, Days: $days")

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

kotlinString "Years: 1, Months: 6, Days: 0"

Пример

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

kotlinimport java.time.LocalDate

val periodStr = "P3M2W"
val period = Period.parse(periodStr)
val date = LocalDate.of(2025, 1, 15)
val newDate = date.plus(period)

println("Original date: $date")
println("New date: $newDate")

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

kotlinString "Original date: 2025-01-15"
String "New date: 2025-04-29"

Пример

Создадим период только из недель:

kotlinval periodStr = "P4W"
val period = Period.parse(periodStr)
println(period)

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

kotlinString "P28D"

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

  • функцию of класса Period,
    которая создает период из числовых компонентов
  • функцию between класса Period,
    которая вычисляет период между двумя датами
  • функцию plus класса Period,
    которая добавляет период к другому периоду
  • класс Duration,
    который представляет продолжительность времени