0Pricing
Swift Academy · Lezione

if let e binding abbreviato

Svolgi gli optional all’interno di uno scope, incluso il binding abbreviato di Swift 5.7.

if let e binding abbreviato è una lezione Swift Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Swift Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Swift Academy include 4 lezioni in totale.

Perché associare gli optional

È necessario estrarre il valore da un optional prima di poterlo usare. if let lo estrae in modo sicuro solo quando esiste un valore.

let stored: Int? = 5
if let value = stored {
    print(value)
}

La forma if let

Scriva if let name = optional { ... }. All'interno delle parentesi graffe, name è il valore estratto non optional. Se l'optional è nil, il blocco viene saltato.

let input: String? = "Swift"
if let text = input {
    print(text.count)
}

Aggiungere un else

Può aggiungere un else per gestire esplicitamente il caso nil.

let age: Int? = nil
if let a = age {
    print("Age is \(a)")
} else {
    print("No age provided")
}

Binding abbreviato

A partire da Swift 5.7, se la nuova costante ha lo stesso nome dell'optional, può scrivere semplicemente if let value senza la parte = value.

let score: Int? = 90
if let score {
    print(score)
}

Forma abbreviata rispetto a quella classica

La forma abbreviata if let score è identica a if let score = score. Riduce la ripetizione quando i nomi coincidono.

let nickname: String? = "Sam"
if let nickname {
    print("Hi \(nickname)")
}

Ambito del binding

La costante con il valore estratto esiste solo all'interno del corpo dell'if. All'esterno, l'optional è ancora un optional.

let maybe: Int? = 7
if let maybe {
    print(maybe + 1)
}
print(maybe as Any)

Binding da conversioni

if let si combina naturalmente con conversioni che possono fallire, come Int(string).

let raw = "42"
if let number = Int(raw) {
    print(number * 2)
} else {
    print("Not a number")
}

Binding dei valori dei dizionari

Usi if let per leggere in modo sicuro un valore del dizionario che potrebbe non esistere.

let ages = ["Ann": 30]
if let annAge = ages["Ann"] {
    print(annAge)
}
if let bobAge = ages["Bob"] {
    print(bobAge)
} else {
    print("Bob not found")
}

Associare una copia modificabile

Usi if var quando desidera modificare localmente il valore estratto. La modifica non influisce sull'optional originale.

let count: Int? = 10
if var c = count {
    c += 5
    print(c)
}

Evitare il nesting

Può inserire la logica che dipende dal valore in modo sicuro all'interno del blocco di binding, evitando l'estrazione forzata con !.

let name: String? = "Lia"
if let name {
    let upper = name.uppercased()
    print(upper)
}

Perché non usare l'estrazione forzata

L'estrazione forzata con ! provoca un arresto anomalo se l'optional è nil. if let è l'alternativa sicura che non provoca mai un arresto anomalo.

let value: Int? = nil
if let value {
    print(value)
} else {
    print("Safe: was nil")
}

Verifica rapida

Provi il binding degli optional.

Riepilogo: if let e binding abbreviato

if let estrae in modo sicuro un optional in una costante locale solo quando esiste un valore. La forma abbreviata di Swift 5.7, if let name, evita di ripetere il nome. La preferisca all'estrazione forzata.

let x: Int? = 3
if let x { print(x) }

Domande Frequenti

La lezione «if let e binding abbreviato» è gratuita?

Sì — il testo completo di «if let e binding abbreviato» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Swift Academy, passa a CoddyKit PRO. Il corso Swift Academy include 4 lezioni in totale.

Cosa imparerò in «if let e binding abbreviato»?

Svolgi gli optional all’interno di uno scope, incluso il binding abbreviato di Swift 5.7. Eserciti Swift Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Swift Academy?

Non è richiesta alcuna esperienza precedente. Swift Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «if let e binding abbreviato»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Swift Academy?

Sì. Ogni lezione Swift Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. if let e binding abbreviato
  2. guard let per l’uscita anticipata
  3. Binding di più optional
  4. Pattern degli optional in switch e for
← Torna a Swift Academy