Класс LocalDate

Класс LocalDate представляет дату без времени и временной зоны. Он хранит год, месяц и день месяца, позволяя выполнять различные операции с датами: создание, парсинг, сравнение, арифметические операции и извлечение компонентов.

Импорт

kotlinimport java.time.LocalDate

Создание объекта LocalDate

Создадим дату "2025-12-31" с помощью метода of:

kotlinval date = LocalDate.of(2025, 12, 31)
println(date)

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

kotlinString "2025-12-31"

Получение текущей даты

Получим текущую дату с помощью метода now:

kotlinval currentDate = LocalDate.now()
println(currentDate)

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

kotlinString "2025-09-10"

Извлечение компонентов даты

Получим отдельные компоненты даты:

kotlinval date = LocalDate.of(2025, 7, 15)

val year = date.year
val month = date.monthValue
val day = date.dayOfMonth

println("Year: $year, Month: $month, Day: $day")

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

kotlinString "Year: 2025, Month: 7, Day: 15"

Арифметические операции с датами

Добавим 10 дней к дате:

kotlinval date = LocalDate.of(2025, 12, 31)
val newDate = date.plusDays(10)
println(newDate)

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

kotlinString "2026-01-10"

Сравнение дат

Сравним две даты:

kotlinval date1 = LocalDate.of(2025, 12, 31)
val date2 = LocalDate.of(2026, 1, 1)

val isBefore = date1.isBefore(date2)
val isAfter = date1.isAfter(date2)
val isEqual = date1.isEqual(date2)

println("Is before: $isBefore, Is after: $isAfter, Is equal: $isEqual")

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

kotlinString "Is before: true, Is after: false, Is equal: false"

Проверка на високосный год

Проверим, является ли год високосным:

kotlinval date = LocalDate.of(2024, 2, 29)
val isLeap = date.isLeapYear()
println("Is leap year: $isLeap")

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

kotlinString "Is leap year: true"

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

  • функцию now класса LocalDate,
    которая возвращает текущую дату
  • функцию of класса LocalDate,
    которая создает дату из числовых компонентов
  • функцию parse класса LocalDate,
    которая преобразует строку в дату
  • класс LocalDateTime,
    который представляет дату и время