Fino alla versione 7 di C#, abbiamo avuto a disposizione il null coalesce operator per restituire un valore nel caso una variabile fosse null. C# 8 introduce anche la possibilità di assegnare un valore a una variabile grazie al nuovo operatore ??=.
List<string> values = null; if (DateTime.Now.Milliseconds > 500) { values = new List<string>(); } values ??= new List<string>(); values.Add("string1"); values.Add("string2");
In questo esempio, la variabile values è inizialmente null. Nel caso in cui i millisecondi attuali siano superiori a 500, la variabile viene inizializzata mentre in caso negativo si passa all'istruzione successiva. In quest'istruzione, l'operatore ??= viene usato per inizializzare il valore di values qualora questo fosse ancora null.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!