Функция range
Функция range интерфейса TemporalField возвращает объект ValueRange, содержащий минимальное и максимальное допустимые значения для данного временного поля.
В параметр мы передаем временной объект, для которого нужно получить диапазон значений.
Импорт
import java.time.temporal.TemporalField
import java.time.temporal.ChronoField
import java.time.LocalDate
import java.time.ValueRange
Синтаксис
fun range(temporal: TemporalAccessor): ValueRange
Пример
Получим диапазон значений для дня месяца в декабре 2025 года:
val date = LocalDate.of(2025, 12, 15)
val range = ChronoField.DAY_OF_MONTH.range(date)
val min = range.minimum
val max = range.maximum
println("Day of month range: $min to $max")
Результат выполнения кода:
String "Day of month range: 1 to 31"
Пример
Проверим диапазон значений для дня месяца в феврале 2025 года (не високосный год):
val febDate = LocalDate.of(2025, 2, 10)
val dayRange = ChronoField.DAY_OF_MONTH.range(febDate)
println("February day range: ${dayRange.minimum} to ${dayRange.maximum}")
Результат выполнения кода:
String "February day range: 1 to 28"
Пример
Получим диапазон значений для месяца года:
val date = LocalDate.of(2025, 6, 15)
val monthRange = ChronoField.MONTH_OF_YEAR.range(date)
println("Month range: ${monthRange.minimum} to ${monthRange.maximum}")
Результат выполнения кода:
String "Month range: 1 to 12"
Пример
Проверим диапазон значений для часа дня:
val date = LocalDate.of(2025, 12, 31)
val hourRange = ChronoField.HOUR_OF_DAY.range(date)
println("Hour range: ${hourRange.minimum} to ${hourRange.maximum}")
Результат выполнения кода:
String "Hour range: 0 to 23"
Смотрите также
-
функцию
rangeклассаLocalDate,
которая возвращает диапазон значений для поля даты -
функцию
getMinimumклассаValueRange,
которая возвращает минимальное значение диапазона -
функцию
getMaximumклассаValueRange,
которая возвращает максимальное значение диапазона -
класс
ChronoField,
который содержит стандартные временные поля