Een datum in de toekomst of het verleden berekenen

Kotlin:
Een datum in de toekomst of het verleden berekenen

Hoe te:

Kotlin behandelt datums en tijden met de java.time bibliotheek. Om dagen toe te voegen of af te trekken, gebruik je plusDays() of minusDays(). Hier is de korte uitleg:

import java.time.LocalDate

fun main() {
    val today = LocalDate.now()
    val tienDagenLater = today.plusDays(10)
    val tienDagenVoor = today.minusDays(10)
    
    println("Vandaag: $today")
    println("Over tien dagen: $tienDagenLater")
    println("Tien dagen geleden: $tienDagenVoor")
}

Voorbeelduitvoer:

Vandaag: 2023-03-15
Over tien dagen: 2023-03-25
Tien dagen geleden: 2023-03-05

Naast dagen, kun je ook spelen met maanden en jaren (plusMonths(), minusMonths(), plusYears(), minusYears()).

Diepgaande Duik

Datums berekenen is niet nieuw. Sinds Java 8 is het java.time pakket de go-to voor datum-tijd rekenwerk - veel beter dan de oude Calendar of Date, die onhandig en niet thread-safe waren.

java.time gebruikt onveranderlijke objecten, zodat je nare bugs vermijdt door per ongeluk je datums te wijzigen. Objecten zoals LocalDate, LocalTime, LocalDateTime en ZonedDateTime helpen je verschillende aspecten van tijd precies weer te geven.

Alternatieven? Natuurlijk. Voor java.time was Joda-Time de wapenkeuze. Sommige oudere systemen gebruiken het nog steeds. En in de Android-wereld backport de ThreeTenABP-bibliotheek java.time functies voor compatibiliteit met Java 6 & 7 omstandigheden.

De java.time API is ook ontworpen om rekening te houden met tijdzones, dankzij klassen zoals ZonedDateTime. Dus wanneer je met datums schuift, kun je de chronologie van de draaiing van de aarde respecteren.

Zie Ook