Sammenlikning av to datoer

Swift:
Sammenlikning av to datoer

How to: (Hvordan:)

import Foundation

let formatter = DateFormatter()
formatter.dateFormat = "yyyy/MM/dd HH:mm"

// Anta at vi har to strenger for datoer.
let dateString1 = "2023/04/01 14:00"
let dateString2 = "2023/04/02 10:00"

// Konverter strengene til Date objekter.
let date1 = formatter.date(from: dateString1)!
let date2 = formatter.date(from: dateString2)!

// Sammenlign datoene.
if date1 < date2 {
    print("date1 er før date2")
} else if date1 > date2 {
    print("date1 er etter date2")
} else {
    print("Datoene er like")
}

Sample Output:

date1 er før date2

Deep Dive (Dykk Dypere)

Før Swift og moderne programmeringsspråk, var dato-manipulasjon tungvint og feilutsatt. Forskjeller i tidssoner og kalendersystemer gjorde sammenligninger komplekse. Swift’s Date type, sammen med DateFormatter, tar hånd om mange av disse problemene automatisk.

Alternativt kan Calendar klassen brukes for å sammenligne datoer med mer kontekst, som å justere for tidssoner eller finne ut om to datoer er på samme dag.

Når det gjelder implementering, representerer Date et bestemt punkt i tid, ikke en “dato” i tradisjonell forstand. Tidspunkter er normalt lagret som tiden siden et referanseøyeblikk (f.eks. Unix epoch). Så, når vi sammenligner to Date objekter, sammenligner vi egentlig to tidspunkt.

See Also (Se Også)