Функция range

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

Импорт

kotlinimport java.time.YearMonth
import java.time.temporal.ValueRange

Синтаксис

kotlinfun range(field: TemporalField): ValueRange

Пример

Получим диапазон дней для февраля 2025 года:

kotlinval yearMonth = YearMonth.of(2025, 2)
val dayRange = yearMonth.range(ChronoField.DAY_OF_MONTH)

println("Min days: " + dayRange.minimum)
println("Max days: " + dayRange.maximum)

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

kotlinString "Min days: 1"
String "Max days: 28"

Пример

Проверим диапазон дней для февраля 2024 года (високосный год):

kotlinval yearMonth = YearMonth.of(2024, 2)
val dayRange = yearMonth.range(ChronoField.DAY_OF_MONTH)

println("February 2024 has " + dayRange.maximum + " days")

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

kotlinString "February 2024 has 29 days"

Пример

Получим диапазон дней для декабря 2025 года:

kotlinval yearMonth = YearMonth.of(2025, 12)
val dayRange = yearMonth.range(ChronoField.DAY_OF_MONTH)

val minDays = dayRange.minimum
val maxDays = dayRange.maximum

println("December 2025: from $minDays to $maxDays days")

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

kotlinString "December 2025: from 1 to 31 days"

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

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