Datas com kotlinx-datetime
Conheça uma forma segura em várias plataformas de lidar com horas e datas
Datas com kotlinx-datetime é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
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.hourLocalDate 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.dateDo 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.
Perguntas Frequentes
A aula “Datas com kotlinx-datetime” é grátis?
Sim — o texto completo de “Datas com kotlinx-datetime” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
O que vou aprender em “Datas com kotlinx-datetime”?
Conheça uma forma segura em várias plataformas de lidar com horas e datas Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?
Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Datas com kotlinx-datetime”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?
Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Strings, números e coleções em todos os lugares
- map, filter e fold no código compartilhado
- Datas com kotlinx-datetime
- O que NÃO está na biblioteca padrão comum