Функция between
Функция between класса Duration вычисляет длительность между двумя объектами, реализующими интерфейс Temporal.
В первый параметр мы передаем начальную временную точку, во второй параметр - конечную временную точку.
Импорт
import java.time.Duration
import java.time.LocalDateTime
Синтаксис
static Duration between(Temporal startInclusive, Temporal endExclusive)
Пример
Вычислим длительность между двумя объектами LocalDateTime:
val start = LocalDateTime.of(2025, 1, 1, 10, 0, 0)
val end = LocalDateTime.of(2025, 1, 1, 14, 30, 0)
val duration = Duration.between(start, end)
println("Duration: $duration")
Результат выполнения кода:
String "Duration: PT4H30M"
Пример
Получим отдельные компоненты длительности:
val start = LocalDateTime.of(2025, 1, 1, 9, 0, 0)
val end = LocalDateTime.of(2025, 1, 1, 12, 45, 30)
val duration = Duration.between(start, end)
val hours = duration.toHours()
val minutes = duration.toMinutes() % 60
val seconds = duration.seconds % 60
println("Hours: $hours, Minutes: $minutes, Seconds: $seconds")
Результат выполнения кода:
String "Hours: 3, Minutes: 45, Seconds: 30"
Пример
Вычислим длительность между временем начала и окончания рабочего дня:
val workStart = LocalDateTime.of(2025, 3, 15, 9, 0, 0)
val workEnd = LocalDateTime.of(2025, 3, 15, 18, 0, 0)
val workDuration = Duration.between(workStart, workEnd)
val workHours = workDuration.toHours()
println("Work hours: $workHours")
Результат выполнения кода:
String "Work hours: 9"
Смотрите также
-
функцию
ofHoursклассаDuration,
которая создает длительность из указанного количества часов -
функцию
toHoursклассаDuration,
которая преобразует длительность в количество часов -
функцию
betweenклассаPeriod,
которая вычисляет период между двумя датами -
класс
LocalDateTime,
который представляет дату и время