Kotlin:
Beregning av en dato i fremtiden eller fortiden
Slik gjør du:
import java.time.LocalDate
import java.time.temporal.ChronoUnit
fun main() {
val today = LocalDate.now()
val tenDaysLater = today.plusDays(10)
val twoWeeksEarlier = today.minusWeeks(2)
println("I dag: $today")
println("Om ti dager: $tenDaysLater")
println("For to uker siden: $twoWeeksEarlier")
}
Sample output:
I dag: 2023-04-01
Om ti dager: 2023-04-11
For to uker siden: 2023-03-18
Dypdykk
I gamle dager måtte programmerere regne ut datoforandringer manuelt, med mange fallgruver som skuddår og varierende månedslengder. Java 8 introduserte java.time
-pakken, som Kotlin også benytter, gjør dette enklere og tryggere. Alternativer inkluderer Joda-Time biblioteket før Java 8 og threeten-backport for eldre Java-versjoner. Den interne implementasjonen håndterer alle de kompliserte delene av datoberegning, som tidssoner og kalenderspesifikke regler.
Du kan bruke forskjellige metoder i LocalDate
for å tilpasse datoen din, som plusDays
, minusWeeks
eller plusMonths
. Kotlin tillater også å bruke minus
- og plus
-funksjonene med Duration
og Period
for å representere tidsmengder.
Se Også
- Offisielle Kotlin-dokumenter om dato- og tids-håndtering: Kotlinlang Documentation
java.time
-pakken i Java 8: Oracle Docs- Joda-Time, et alternativ før
java.time
: Joda-Time - Threeten-backport, for eldre Java-versjoner: ThreeTen-Backport