Swift:
Confronto tra due date

Come si fa:

import Foundation

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

let firstDate = formatter.date(from: "25/12/2022")!
let secondDate = formatter.date(from: "01/01/2023")!

if firstDate < secondDate {
    print("La prima data è precedente alla seconda.")
} else if firstDate > secondDate {
    print("La prima data è successiva alla seconda.")
} else {
    print("Le date sono uguali.")
}

Output:

La prima data è precedente alla seconda.

Approfondimenti

Confrontare date è fondamentale sin dai primi sistemi software e il modo in cui viene attuato può variare. In Swift, le date sono comunemente rappresentate con l’oggetto Date di Foundation. Comparare date usando gli operatori <, > e == è intuitivo e diretto.

Un’alternativa è usare Calendar per comparare componenti specifici di date, come solo l’anno o il mese. A seconda del contesto, si potrebbe richiedere una precisione che va oltre la semplice comparazione di date e orari fino al minuto, secondo o millisecondo.

Un dettaglio di implementazione: quando si usa DateFormatter, è critico impostare la locale e il timeZone per garantire che la data sia interpretata correttamente nel contesto del locale e fuso orario atteso.

Vedere Anche