Operatori logici condizionali
Fa parte della sezione Logica e flusso del percorso C# di Coddy. Lezione 37 di 66.
C# fornisce operatori speciali per gestire i valori null in modo conciso. Due operatori utili sono ?? (l'operatore di coalescenza null) e ?. (l'operatore condizionale null). Tieni presente che questi sono operatori per la gestione dei valori null: in C#, il termine "operatori logici condizionali" si riferisce a && e ||.
Esploriamo prima l’operatore di coalescenza dei null (??). Questo operatore restituisce l’operando a sinistra se non è null, altrimenti restituisce l’operando a destra.
Crea una variabile stringa che potrebbe essere null:
string name = null;Usa l'operatore di coalescenza dei valori nulli per fornire un valore predefinito:
string displayName = name ?? "Guest";Dopo aver eseguito il codice qui sopra, la variabile displayName contiene:
"Guest"Se name avesse un valore, verrebbe usato quel valore:
string name = "Alice";
string displayName = name ?? "Guest";Ora displayName contiene:
"Alice"Sfida
FacileCrea un metodo chiamato getSafeValue che accetta due argomenti:
- Un intero nullable (
int?value) - Un intero (
intdefaultValue)
Il metodo dovrebbe restituire il valore se non è null, altrimenti dovrebbe restituire defaultValue. Usa l'operatore di coalescenza dei null (??) per ottenere questo risultato.
Provalo tu
using System;
class GetSafeValue
{
public static int getSafeValue(int? value, int defaultValue)
{
// Scrivi il tuo codice qui
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Logica e flusso
1Array multidimensionali
Fondamenti degli array 2DDichiarare e inizializzare array 2DAccedere agli elementi di un array 2DCicli annidati con array 2DArray irregolariOperazioni comuni sulle matriciRipasso: array multidimensionali4Tecniche di controllo del flusso
Uscite anticipateClausole di guardiaIstruzioni di salto (goto)Break e continueAppiattire le condizioni annidate7Operatori logici avanzati
Valutazione con cortocircuitoOperatori logici condizionaliPrecedenza degli operatoriRiepilogo - Operatori avanzati2Decisioni avanzate
Condizioni multipleLogica booleana complessaConfronto tra if e switchIstruzioni switch annidateRiepilogo - decisioni avanzate5Gestione delle eccezioni
Nozioni di base su try-catchTipi di eccezioneBlocchi catch multipliLavorare con i fileBlocco finallyUsing vs. try-finallyEccezioni personalizzateRiepilogo - gestione degli errori3Miglioramenti dei cicli
Prestazioni dei cicliIterare strutture complesseOgni tipo di cicloRifattorizzare i cicliRiepilogo - Cicli ottimizzati6Gestione dei valori null
Fondamenti dei riferimenti nullTipi valore nullableSchemi di controllo dei valori nullProgrammazione difensivaRiepilogo: sicurezza rispetto ai valori nullEsercitati da solo: Compilatore C# online