НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
1132 of 1310 menu

Класс TemporalAmount

Интерфейс TemporalAmount представляет временной промежуток, который может быть измерен в различных единицах времени. Реализации этого интерфейса, такие как Period и Duration, позволяют работать с датами и временем, добавляя или вычитая промежутки. Метод get возвращает значение указанной единицы времени, метод getUnits возвращает список доступных единиц измерения, метод addTo добавляет промежуток к временному объекту, а метод subtractFrom вычитает промежуток из временного объекта.

Импорт

import java.time.temporal.TemporalAmount import java.time.Period import java.time.Duration

Синтаксис

interface TemporalAmount { fun get(unit: TemporalUnit): Long fun getUnits(): List<TemporalUnit> fun addTo(temporal: Temporal): Temporal fun subtractFrom(temporal: Temporal): Temporal }

Пример

Создадим период в 2 года, 3 месяца и 10 дней и добавим его к дате:

import java.time.LocalDate import java.time.Period val period = Period.of(2, 3, 10) val date = LocalDate.of(2025, 1, 1) val newDate = period.addTo(date) println(newDate)

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

String "2027-04-11"

Пример

Получим компоненты временного промежутка:

import java.time.Period import java.time.temporal.ChronoUnit val period = Period.of(1, 5, 15) val years = period.get(ChronoUnit.YEARS) val months = period.get(ChronoUnit.MONTHS) val days = period.get(ChronoUnit.DAYS) println("Years: $years, Months: $months, Days: $days")

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

String "Years: 1, Months: 5, Days: 15"

Пример

Получим список единиц измерения временного промежутка:

import java.time.Duration val duration = Duration.ofHours(5).plusMinutes(30) val units = duration.getUnits() for (unit in units) { println(unit) }

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

String "Seconds" String "Nanos"

Пример

Вычтем продолжительность из времени:

import java.time.LocalTime import java.time.Duration val duration = Duration.ofMinutes(45) val time = LocalTime.of(14, 30) val newTime = duration.subtractFrom(time) println(newTime)

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

String "13:45"

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

  • класс Period,
    который представляет период в годах, месяцах и днях
  • класс Duration,
    который представляет продолжительность в секундах и наносекундах
  • интерфейс TemporalUnit,
    который представляет единицу измерения времени
  • класс LocalDate,
    который представляет дату без времени
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить