Метод getUnits
Метод getUnits интерфейса TemporalAmount возвращает неизменяемый список единиц измерения, которые составляют данный временной промежуток.
Метод не принимает параметров и возвращает список объектов TemporalUnit.
Импорт
import java.time.temporal.TemporalAmount
import java.time.temporal.TemporalUnit
import java.time.Period
import java.time.Duration
Синтаксис
fun getUnits(): List<TemporalUnit>
Пример
Получим единицы измерения для периода в 2 года, 3 месяца и 5 дней:
val period = Period.of(2, 3, 5)
val units = period.getUnits()
for (unit in units) {
println(unit)
}
Результат выполнения кода:
Array<TemporalUnit> [Years, Months, Days]
Пример
Получим единицы измерения для длительности в 5 часов, 30 минут и 15 секунд:
val duration = Duration.ofHours(5).plusMinutes(30).plusSeconds(15)
val units = duration.getUnits()
for (unit in units) {
println(unit)
}
Результат выполнения кода:
Array<TemporalUnit> [Seconds, Nanos]
Пример
Проверим наличие конкретной единицы измерения в периоде:
import java.time.temporal.ChronoUnit
val period = Period.ofMonths(6)
val units = period.getUnits()
val hasMonths = units.contains(ChronoUnit.MONTHS)
println("Contains months: $hasMonths")
Результат выполнения кода:
String "Contains months: true"
Пример
Получим размер списка единиц измерения для различных временных промежутков:
val period = Period.ofYears(1)
val duration = Duration.ofDays(1)
val periodUnitsSize = period.getUnits().size
val durationUnitsSize = duration.getUnits().size
println("Period units count: $periodUnitsSize")
println("Duration units count: $durationUnitsSize")
Результат выполнения кода:
String "Period units count: 3"
String "Duration units count: 2"
Смотрите также
-
метод
getинтерфейсаTemporalAmount,
который возвращает значение указанной единицы измерения -
метод
getYearsклассаPeriod,
который возвращает количество лет в периоде -
метод
getSecondsклассаDuration,
который возвращает количество секунд в длительности -
интерфейс
TemporalUnit,
который представляет единицу измерения времени