Функция getDuration

Функция getDuration интерфейса TemporalUnit возвращает оценку длительности временной единицы в виде объекта Duration. Для временных единиц, основанных на времени (например, часы, минуты, секунды), длительность является точной. Для единиц, основанных на дате (например, дни, месяцы, годы), длительность является оценкой, основанной на предположении, что день имеет 24 часа.

Импорт

kotlinimport java.time.temporal.ChronoUnit
import java.time.Duration

Синтаксис

kotlinfun getDuration(): Duration

Пример

Получим длительность для единицы ChronoUnit.HOURS:

kotlinval unit = ChronoUnit.HOURS
val duration = unit.duration
println(duration)

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

kotlinDuration PT1H

Пример

Получим длительность для единицы ChronoUnit.DAYS:

kotlinval unit = ChronoUnit.DAYS
val duration = unit.duration
println(duration)

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

kotlinDuration PT24H

Пример

Сравним длительности разных временных единиц:

kotlinval units = listOf(
  ChronoUnit.SECONDS,
  ChronoUnit.MINUTES, 
  ChronoUnit.HOURS,
  ChronoUnit.DAYS
)

for (unit in units) {
  val duration = unit.duration
  println("$unit: $duration")
}

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

kotlinSECONDS: PT1S
MINUTES: PT1M
HOURS: PT1H
DAYS: PT24H

Пример

Получим длительность в секундах для единицы ChronoUnit.HOURS:

kotlinval unit = ChronoUnit.HOURS
val duration = unit.duration
val seconds = duration.seconds
println(seconds)

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

kotlinLong 3600

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

  • интерфейс TemporalUnit,
    который представляет единицу измерения времени
  • класс Duration,
    который представляет длительность времени
  • перечисление ChronoUnit,
    которое содержит стандартные единицы измерения времени
  • функцию between класса Duration,
    которая вычисляет длительность между двумя временными точками