Eseguire l'unwrap in sicurezza con if e orelse
Gestire null senza sorprese
Eseguire l'unwrap in sicurezza con if e orelse è una lezione Zig Academy gratuita su CoddyKit. Questa è la lezione 2 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 Zig Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Zig Academy include 4 lezioni in totale.
Prima deve eseguire l'unwrap
Un optional non è il valore che contiene. Prima di poter usare il contenuto, deve eseguire l'unwrap e gestire il caso null.
Acquisire il valore con if
Un if applicato a un optional può associare il valore interno tramite una cattura con pipe. Il corpo viene eseguito solo quando l'optional non è null.
if (maybe) |value| {
use(value);
}Gestire il ramo null
Aggiunga un else per reagire quando l'optional è null. In questo modo entrambi i risultati sono gestiti, senza possibilità di dimenticare un caso.
if (maybe) |v| {
use(v);
} else {
handleEmpty();
}La cattura è già sottoposta a unwrap
Nel corpo dell'if, il nome acquisito ha il tipo interno semplice, non un optional. Il punto interrogativo è già stato rimosso per lei.
if (age) |a| {
// a is i32, not ?i32
}orelse fornisce un valore predefinito
L'operatore orelse esegue l'unwrap di un optional, ma se questo è null restituisce invece il valore alla sua destra.
const a = age orelse 0;orelse è un'espressione
Poiché orelse restituisce un valore, può usarlo direttamente in qualsiasi punto, ad esempio passando un numero con valore predefinito direttamente a una chiamata di funzione.
print(level orelse 1);orelse può eseguire codice
Il lato destro di orelse può essere un blocco. Lo usi per calcolare un valore alternativo o persino per uscire subito dalla funzione corrente.
const v = lookup() orelse return;Eseguire l'unwrap forzato con .?
Scrivendo .? dichiara che l'optional non è null e restituisce il valore. Se in una build sicura è null, il programma va in panic.
const a = age.?;Usare .? solo quando è certo
Ricorra a .? solo quando null è davvero impossibile. Altrimenti preferisca if o orelse, così un valore vuoto non causerà mai un arresto anomalo.
Scegliere in base all'intento
Usi if per verificare la presenza, orelse per un valore predefinito rapido e .? solo quando può dimostrare che il valore esiste.
La sicurezza è il comportamento predefinito
Ogni strumento la obbliga a riconoscere null. Ecco perché gli optional di Zig raramente si trasformano nei crash imprevisti comuni in altri linguaggi.
Verifica rapida
Vuole usare 0 come valore predefinito quando un intero optional è null. Quale soluzione è più adatta?
Riepilogo
Può eseguire l'unwrap degli optional con le catture di if, fornire valori predefiniti tramite orelse oppure fare un'asserzione con .?. In ogni caso affronta null intenzionalmente. ✅
Impara Zig con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Eseguire l'unwrap in sicurezza con if e orelse» è gratuita?
Sì — il testo completo di «Eseguire l'unwrap in sicurezza con if e orelse» è 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 Zig Academy, passa a CoddyKit PRO. Il corso Zig Academy include 4 lezioni in totale.
Cosa imparerò in «Eseguire l'unwrap in sicurezza con if e orelse»?
Gestire null senza sorprese Eserciti Zig 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 Zig Academy?
Non è richiesta alcuna esperienza precedente. Zig 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 2 di 4.
Quanto tempo richiede la lezione «Eseguire l'unwrap in sicurezza con if e orelse»?
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 Zig Academy?
Sì. Ogni lezione Zig 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
- Dichiarare tipi optional
- Eseguire l'unwrap in sicurezza con if e orelse
- Puntatori optional e ?*T
- null e undefined a confronto