Fondamenti dei riferimenti null
Fa parte della sezione Logica e flusso del percorso C# di Coddy. Lezione 31 di 66.
In C#, un riferimento null rappresenta l'assenza di un oggetto. Capire come lavorare con valori null è essenziale per scrivere codice robusto.
Dichiara una variabile di tipo riferimento (come string) senza assegnarle un valore:
string name = null;La variabile 'name' ora contiene un riferimento null, il che significa che non punta ad alcun oggetto in memoria.
Provare a usare un riferimento null senza controllare può causare errori di runtime:
string name = null;
// Questo genererà una NullReferenceException
int length = name.Length;Puoi verificare se un riferimento è null prima di usarlo:
string name = null;
if (name != null)
{
// È sicuro usare name qui
int length = name.Length;
}Puoi anche assegnare un valore non nullo alla variabile:
string name = null;
name = "John";
// Ora è sicuro usare name
int length = name.Length; // length sarà 4Sfida
FacileCrea un metodo chiamato ProcessName che accetta un parametro stringa chiamato name. Il metodo dovrebbe:
- Verificare se il nome è null
- Se il nome è null, stampare: "Name is null"
- Se il nome non è null, stampare: "Name length is X" (dove X è la lunghezza del nome)
Provalo tu
using System;
class Program
{
public static void ProcessName(string name)
{
// Scrivi qui il tuo codice
}
static void Main(string[] args)
{
string input = Console.ReadLine();
// Converti la stringa "null" nel valore null effettivo
string name = input.ToLower() == "null" ? null : input;
ProcessName(name);
}
}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 annidate2Decisioni 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