Функция 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
,
которая умножает период на скаляр