АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
913 of 1310 menu
Новый формат обучения! Репетиторство по программированию. Есть еще 3 свободных места! Жми для подробностей.

Функция negated

Функция negated класса Period возвращает новый объект периода, в котором значения лет, месяцев и дней умножены на -1. Эта функция полезна для изменения знака периода, например, для преобразования положительного периода в отрицательный и наоборот.

Импорт

import java.time.Period

Синтаксис

fun negated(): Period

Пример

Создадим положительный период и преобразуем его в отрицательный:

val period = Period.of(2, 3, 15) val negatedPeriod = period.negated() println("Original period: $period") println("Negated period: $negatedPeriod")

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

String "Original period: P2Y3M15D" String "Negated period: P-2Y-3M-15D"

Пример

Преобразуем отрицательный период в положительный:

val negativePeriod = Period.of(-1, -6, -10) val positivePeriod = negativePeriod.negated() println("Negative period: $negativePeriod") println("Positive period: $positivePeriod")

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

String "Negative period: P-1Y-6M-10D" String "Positive period: P1Y6M10D"

Пример

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

val period1 = Period.ofYears(5) val period2 = period1.negated() val date1 = LocalDate.of(2025, 1, 1) val date2 = date1.plus(period1) val date3 = date1.plus(period2) println("Start date: $date1") println("After 5 years: $date2") println("Before 5 years: $date3")

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

String "Start date: 2025-01-01" String "After 5 years: 2030-01-01" String "Before 5 years: 2020-01-01"

Пример

Проверим, что двойное применение negated возвращает исходный период:

val original = Period.ofMonths(8) val negated = original.negated() val doubleNegated = negated.negated() println("Original: $original") println("Negated: $negated") println("Double negated: $doubleNegated") println("Are original and double negated equal? ${original == doubleNegated}")

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

String "Original: P8M" String "Negated: P-8M" String "Double negated: P8M" String "Are original and double negated equal? true"

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

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