Метод getRangeUnit

Метод getRangeUnit класса ChronoField возвращает единицу измерения, которая определяет полный диапазон значений для данного временного поля. Эта единица всегда больше или равна базовой единице измерения поля и описывает весь возможный диапазон значений, который может принимать поле.

Импорт

kotlinimport java.time.temporal.ChronoField

Синтаксис

kotlinfun getRangeUnit(): TemporalUnit

Пример

Получим единицу диапазона для поля DAY_OF_MONTH:

kotlinval rangeUnit = ChronoField.DAY_OF_MONTH.getRangeUnit()
println(rangeUnit)

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

kotlinString "Months"

Пример

Сравним базовую единицу и единицу диапазона для поля HOUR_OF_DAY:

kotlinval baseUnit = ChronoField.HOUR_OF_DAY.getBaseUnit()
val rangeUnit = ChronoField.HOUR_OF_DAY.getRangeUnit()

println("Base unit: $baseUnit")
println("Range unit: $rangeUnit")

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

kotlinString "Base unit: Hours, Range unit: Days"

Пример

Получим единицы измерения для нескольких различных полей:

kotlinval fields = listOf(
  ChronoField.SECOND_OF_MINUTE,
  ChronoField.MINUTE_OF_HOUR,
  ChronoField.DAY_OF_YEAR,
  ChronoField.MONTH_OF_YEAR
)

for (field in fields) {
  val rangeUnit = field.getRangeUnit()
  println("${field.name}: $rangeUnit")
}

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

kotlinString "SECOND_OF_MINUTE: Minutes, MINUTE_OF_HOUR: Hours, DAY_OF_YEAR: Years, MONTH_OF_YEAR: Years"

Пример

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

kotlinval field = ChronoField.DAY_OF_MONTH
val rangeUnit = field.getRangeUnit()
val range = field.range()

println("Field: ${field.name}")
println("Range unit: $rangeUnit")
println("Valid range: ${range.minimum} to ${range.maximum}")

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

kotlinString "Field: DAY_OF_MONTH, Range unit: Months, Valid range: 1 to 31"

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

  • метод getBaseUnit класса ChronoField,
    который возвращает базовую единицу измерения поля
  • метод range класса ChronoField,
    который возвращает диапазон допустимых значений поля
  • класс ChronoUnit,
    который содержит стандартные единицы измерения времени
  • интерфейс TemporalUnit,
    который представляет единицу измерения временной шкалы