Swift:
Calcolo di una data futura o passata
Come fare:
Swift offre Date, Calendar, e DateComponents per lavorare con le date. Ecco come si fa:
import Foundation
// Date attuale
let oggi = Date()
// Calcolo di una data futura (5 giorni dopo)
var dataFutura = Calendar.current.date(byAdding: .day, value: 5, to: oggi)!
// Calcolo di una data passata (5 giorni fa)
var dataPassata = Calendar.current.date(byAdding: .day, value: -5, to: oggi)!
// Formattazione e stampa
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .medium
print("Data futura: \(dateFormatter.string(from: dataFutura))")
print("Data passata: \(dateFormatter.string(from: dataPassata))")Output potrebbe essere:
Data futura: Feb 18, 2023
Data passata: Feb 8, 2023Approfondimento
Inizialmente i calcoli di data e ora erano complessi, si basavano su operazioni manuali e algoritmi personalizzati. Ora, Swift gestisce il calendario e i fusi orari; quindi, le operazioni sono più sicure. Alternative includevano librerie come DateTools e SwiftDate, ma Swift standard ha chiuso il divario. Durante l’implementazione, considera le regole del calendario (gregoriano, ecc.), i fusi orari e la localizzazione. Usa DateComponents per precisione e TimeInterval per operazioni più semplici.
Vedi Anche
- Documentazione di Swift sul lavoro con date e calendari: Apple Developer Documentation
- Guida di NSHipster su
DateeCalendar: NSHipster Date & Calendar - Sito di Ray Wenderlich su manipolazione delle date in Swift: Ray Wenderlich Date Manipulation