Функция toEpochDay

Функция toEpochDay класса LocalDate возвращает количество дней, прошедших с эпохи Unix (1970-01-01) до текущей даты. Функция не принимает параметров и возвращает значение типа Long.

Импорт

kotlinimport java.time.LocalDate

Синтаксис

kotlinfun toEpochDay(): Long

Пример

Преобразуем дату "1970-01-01" в количество дней с эпохи:

kotlinval date = LocalDate.of(1970, 1, 1)
val epochDays = date.toEpochDay()
println(epochDays)

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

kotlinLong 0

Пример

Преобразуем дату "2025-12-31" в количество дней с эпохи:

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

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

kotlinLong 20453

Пример

Вычислим разницу в днях между двумя датами:

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

val days1 = date1.toEpochDay()
val days2 = date2.toEpochDay()
val diff = days2 - days1

println("Difference in days: $diff")

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

kotlinString "Difference in days: 364"

Пример

Проверим високосный год с помощью преобразования в дни:

kotlinval leapYearDate = LocalDate.of(2024, 12, 31)
val nextYearDate = LocalDate.of(2025, 12, 31)

val leapDays = leapYearDate.toEpochDay()
val nextDays = nextYearDate.toEpochDay()
val yearLength = nextDays - leapDays

println("Days in year: $yearLength")

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

kotlinString "Days in year: 366"

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

  • функцию now класса LocalDate,
    которая возвращает текущую дату
  • функцию of класса LocalDate,
    которая создает дату из числовых компонентов
  • функцию until класса LocalDate,
    которая вычисляет период между двумя датами
  • функцию toEpochMilli класса Instant,
    которая возвращает количество миллисекунд с эпохи