Функция normalized

Функция normalized класса Period нормализует значения составных частей периода (лет, месяцев, дней), перераспределяя избытки в более крупные единицы измерения для приведения их в стандартный диапазон.

Принцип работы:

Цель функции - представить период в наиболее читаемом и стандартизированном виде, например, преобразовать 14 месяцев в 1 год и 2 месяца.

Импорт

kotlinimport java.time.Period

Синтаксис

kotlinfun normalized(): Period

Пример

Нормализуем период с 15 месяцами и 40 днями:

kotlinval period = Period.of(0, 15, 40)
val normalizedPeriod = period.normalized()

println("Original: " + period)
println("Normalized: " + normalizedPeriod)

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

kotlinString "Original: P15M40D"
String "Normalized: P1Y3M40D"

Пример

Нормализуем период с 25 месяцами:

kotlinval period = Period.ofMonths(25)
val normalizedPeriod = period.normalized()

println("Original: " + period)
println("Normalized: " + normalizedPeriod)

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

kotlinString "Original: P25M"
String "Normalized: P2Y1M"

Пример

Нормализуем период с отрицательными значениями:

kotlinval period = Period.of(0, -14, -45)
val normalizedPeriod = period.normalized()

println("Original: " + period)
println("Normalized: " + normalizedPeriod)

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

kotlinString "Original: P-14M-45D"
String "Normalized: P-1Y-2M-45D"

Пример

Нормализуем период и получим отдельные компоненты:

kotlinval period = Period.of(0, 30, 400)
val normalized = period.normalized()

val years = normalized.years
val months = normalized.months
val days = normalized.days

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

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

kotlinString "Years: 2, Months: 6, Days: 400"

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

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