Функция minus
Функция minus класса Period вычитает указанный период из текущего и возвращает новый объект Period.
В параметр мы передаем период для вычитания, который может быть представлен объектом Period или отдельными компонентами (годами, месяцами, днями).
Импорт
import java.time.Period
Синтаксис
fun minus(amount: TemporalAmount): Period
fun minus(amountToSubtract: Long, unit: TemporalUnit): Period
fun minusYears(yearsToSubtract: Long): Period
fun minusMonths(monthsToSubtract: Long): Period
fun minusDays(daysToSubtract: Long): Period
Пример
Вычтем один период из другого:
val period1 = Period.of(5, 8, 15)
val period2 = Period.of(2, 3, 7)
val result = period1.minus(period2)
println(result)
Результат выполнения кода:
String "P3Y5M8D"
Пример
Вычтем отдельные компоненты из периода:
val period = Period.of(10, 6, 20)
val resultYears = period.minusYears(3)
val resultMonths = period.minusMonths(2)
val resultDays = period.minusDays(5)
println("After subtracting years: $resultYears")
println("After subtracting months: $resultMonths")
println("After subtracting days: $resultDays")
Результат выполнения кода:
String "After subtracting years: P7Y6M20D"
String "After subtracting months: P10Y4M20D"
String "After subtracting days: P10Y6M15D"
Пример
Вычтем период с отрицательными значениями:
val period1 = Period.of(3, 2, 1)
val period2 = Period.of(-1, -1, -1)
val result = period1.minus(period2)
println(result)
Результат выполнения кода:
String "P4Y3M2D"
Пример
Вычтем период из даты:
import java.time.LocalDate
val date = LocalDate.of(2025, 12, 31)
val period = Period.of(1, 2, 15)
val newDate = date.minus(period)
println(newDate)
Результат выполнения кода:
String "2024-10-16"