Функция range

Функция range класса LocalDate возвращает объект ValueRange, который представляет допустимый диапазон значений для указанного поля даты. В параметр мы передаем поле даты, для которого хотим получить диапазон значений.

Импорт

kotlinimport java.time.LocalDate
import java.time.temporal.ChronoField

Синтаксис

kotlinfun range(field: TemporalField): ValueRange

Пример

Получим диапазон дней в месяце для даты "2025-02-15":

kotlinval date = LocalDate.of(2025, 2, 15)
val dayRange = date.range(ChronoField.DAY_OF_MONTH)
println(dayRange)

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

kotlinValueRange 1 - 28

Пример

Получим диапазон дней в году для даты "2025-12-31":

kotlinval date = LocalDate.of(2025, 12, 31)
val dayOfYearRange = date.range(ChronoField.DAY_OF_YEAR)
println(dayOfYearRange)

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

kotlinValueRange 1 - 365

Пример

Проверим, является ли значение валидным для месяца:

kotlinval date = LocalDate.of(2025, 6, 15)
val monthRange = date.range(ChronoField.MONTH_OF_YEAR)
val isValid = monthRange.isValidValue(13)

println("Is 13 a valid month? $isValid")

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

kotlinString "Is 13 a valid month? false"

Пример

Получим минимальное и максимальное значение для дня недели:

kotlinval date = LocalDate.of(2025, 7, 20)
val dayOfWeekRange = date.range(ChronoField.DAY_OF_WEEK)

val min = dayOfWeekRange.minimum
val max = dayOfWeekRange.maximum

println("Day of week range: $min to $max")

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

kotlinString "Day of week range: 1 to 7"

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

  • функцию getDayOfMonth класса LocalDate,
    которая возвращает день месяца
  • функцию getDayOfYear класса LocalDate,
    которая возвращает день года
  • функцию isLeapYear класса LocalDate,
    которая проверяет, является ли год високосным
  • класс ValueRange,
    который представляет диапазон значений