0Pricing
Kotlin Multiplatform Academy · Урок

Даты с kotlinx-datetime

Безопасный для разных платформ способ работы со временем и датами

«Даты с kotlinx-datetime» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Dates Need a Library

The core stdlib has no shared date type, so KMP uses kotlinx-datetime, an official multiplatform library for time.

Add the Dependency

You pull kotlinx-datetime into commonMain in your build file, and then every target can work with dates the same way.

implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.0")

Instant Is a Moment

An Instant is a single point on the timeline, the same exact moment no matter which device reads it.

val now: Instant = Clock.System.now()

Time Zones Matter

The same instant looks different per TimeZone. The library lets you convert moments into local wall-clock time safely.

val zone = TimeZone.currentSystemDefault()

LocalDateTime for People

A LocalDateTime is the human-readable date and time, like a calendar entry, without any time-zone baggage attached.

val dt = now.toLocalDateTime(zone)

Read the Parts

From a LocalDateTime you can read fields like year, month, day and hour, all in plain common Kotlin.

val y = dt.year
val h = dt.hour

LocalDate for Calendars

When you only care about the day, use LocalDate. It models a date with no time component at all.

val today: LocalDate = dt.date

Do Math With Durations

You can add or subtract a Duration from an Instant to shift moments forward or backward in time.

val later = now.plus(1, DateTimeUnit.HOUR, zone)

Parse and Format Text

kotlinx-datetime can parse ISO strings into instants and turn them back into text, ideal for API payloads.

val parsed = Instant.parse("2024-01-01T00:00:00Z")

Identical On Every Target

Because the library is multiplatform, your date logic produces the same result on Android, iOS and desktop. 🙂

Keep Dates in Shared Code

Put all your time handling in commonMain with kotlinx-datetime, so the two apps never disagree about dates.

Quick Check

Which type marks one exact moment in time?

Recap

Use kotlinx-datetime for dates: Instant for moments, LocalDateTime for people, and shared code that agrees across platforms.

Часто задаваемые вопросы

Урок «Даты с kotlinx-datetime» бесплатный?

Да — полный текст урока «Даты с kotlinx-datetime» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Чему я научусь в уроке «Даты с kotlinx-datetime»?

Безопасный для разных платформ способ работы со временем и датами Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?

Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Даты с kotlinx-datetime»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?

Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Строки, числа и коллекции повсюду
  2. map, filter и fold в общем коде
  3. Даты с kotlinx-datetime
  4. Чего НЕТ в общей стандартной библиотеке
← Назад к Kotlin Multiplatform Academy