to Components
Начиная с Kotlin: 1.6
inline fun <T> toComponents(action: (days: Long, hours: Int, minutes: Int, seconds: Int, nanoseconds: Int) -> T): T
Разбивает эту длительность на дни, часы, минуты, секунды и наносекунды и выполняет заданное действие с этими компонентами. Результат действия возвращается как результат этой функции.
nanosecondsпредставляет целое число наносекунд в этой длительности, а его абсолютное значение меньше 1_000_000_000;secondsпредставляет целое число секунд в этой длительности, а его абсолютное значение меньше 60;minutesпредставляет целое число минут в этой длительности, а его абсолютное значение меньше 60;hoursпредставляет целое число часов в этой длительности, а его абсолютное значение меньше 24;daysпредставляет целое число дней в этой длительности.
Обратите внимание, что при таком преобразовании день всегда равен ровно 24 часам. Это отличается от календарных дней, которые могут быть длиннее или короче 24 часов, если в этот день происходит переход на летнее или зимнее время.
Бесконечные длительности представляются либо как Long.MAX_VALUE дней, либо как Long.MIN_VALUE дней (в зависимости от знака бесконечности), а компоненты меньших разрядов равны нулю.
inline fun <T> toComponents(action: (hours: Long, minutes: Int, seconds: Int, nanoseconds: Int) -> T): T
Разбивает эту длительность на часы, минуты, секунды и наносекунды и выполняет заданное действие с этими компонентами. Результат действия возвращается как результат этой функции.
nanosecondsпредставляет целое число наносекунд в этой длительности, а его абсолютное значение меньше 1_000_000_000;secondsпредставляет целое число секунд в этой длительности, а его абсолютное значение меньше 60;minutesпредставляет целое число минут в этой длительности, а его абсолютное значение меньше 60;hoursпредставляет целое число часов в этой длительности.
Бесконечные длительности представляются либо как Long.MAX_VALUE часов, либо как Long.MIN_VALUE часов (в зависимости от знака бесконечности), а компоненты меньших разрядов равны нулю.
inline fun <T> toComponents(action: (minutes: Long, seconds: Int, nanoseconds: Int) -> T): T
Разбивает эту длительность на минуты, секунды и наносекунды и выполняет заданное действие с этими компонентами. Результат действия возвращается как результат этой функции.
nanosecondsпредставляет целое число наносекунд в этой длительности, а его абсолютное значение меньше 1_000_000_000;secondsпредставляет целое число секунд в этой длительности, а его абсолютное значение меньше 60;minutesпредставляет целое число минут в этой длительности.
Бесконечные длительности представляются либо как Long.MAX_VALUE минут, либо как Long.MIN_VALUE минут (в зависимости от знака бесконечности), а компоненты меньших разрядов равны нулю.
inline fun <T> toComponents(action: (seconds: Long, nanoseconds: Int) -> T): T
Разбивает эту длительность на секунды и наносекунды и выполняет заданное действие с этими компонентами. Результат действия возвращается как результат этой функции.
nanosecondsпредставляет целое число наносекунд в этой длительности, а его абсолютное значение меньше 1_000_000_000;secondsпредставляет целое число секунд в этой длительности.
Бесконечные длительности представляются либо как Long.MAX_VALUE секунд, либо как Long.MIN_VALUE секунд (в зависимости от знака бесконечности), а наносекунды равны нулю.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/to-components.html