Класс IsoChronology
Класс IsoChronology представляет хронологию по стандарту ISO-8601, которая является стандартной системой дат в Java и Kotlin.
Этот класс предоставляет методы для определения високосных годов, создания дат и получения информации о полях даты.
Импорт
import java.time.chrono.IsoChronology
Синтаксис
// Получение экземпляра хронологии
val chronology = IsoChronology.INSTANCE
// Проверка на високосный год
fun isLeapYear(prolepticYear: Long): Boolean
// Создание даты
fun date(year: Int, month: Int, dayOfMonth: Int): LocalDate
fun dateYearDay(year: Int, dayOfYear: Int): LocalDate
fun dateNow(): LocalDate
// Получение диапазона значений для поля
fun range(field: ChronoField): ValueRange
Пример
Проверим, является ли 2025 год високосным:
val chronology = IsoChronology.INSTANCE
val isLeap = chronology.isLeapYear(2025)
println("Is 2025 leap year: $isLeap")
Результат выполнения кода:
Boolean false
Пример
Создадим дату 2025-06-15 с помощью IsoChronology:
val chronology = IsoChronology.INSTANCE
val date = chronology.date(2025, 6, 15)
println(date)
Результат выполнения кода:
String "2025-06-15"
Пример
Создадим дату по номеру года и дню года (100-й день 2025 года):
val chronology = IsoChronology.INSTANCE
val date = chronology.dateYearDay(2025, 100)
println(date)
Результат выполнения кода:
String "2025-04-10"
Пример
Получим диапазон допустимых значений для дня месяца в феврале 2025 года:
val chronology = IsoChronology.INSTANCE
val februaryDate = chronology.date(2025, 2, 1)
val range = chronology.range(ChronoField.DAY_OF_MONTH)
val febRange = range.refinedBy(februaryDate)
println("Min: ${febRange.minimum}, Max: ${febRange.maximum}")
Результат выполнения кода:
String "Min: 1, Max: 28"
Пример
Получим текущую дату с использованием IsoChronology:
val chronology = IsoChronology.INSTANCE
val currentDate = chronology.dateNow()
println(currentDate)
Результат выполнения кода:
String "2025-09-11"
Смотрите также
-
класс
LocalDate,
который представляет дату без времени в ISO-8601 системе -
класс
ChronoField,
который предоставляет поля для работы с датой и временем -
класс
ValueRange,
который представляет диапазон значений для полей даты -
метод
isLeapYearклассаLocalDate,
который проверяет, является ли год високосным