Les types référence nullables en C#
Dans cette leçon, vous allez utiliser les types référence nullables pour que le compilateur vous aide à repérer les endroits où une valeur null peut apparaître.
Introduction
L'erreur NullReferenceException se produit quand on accède à une variable qui vaut null, et c'est l'une des erreurs les plus fréquentes. C# permet d'indiquer explicitement quelles variables peuvent être null avec le signe ?, comme string?. Le compilateur avertit alors si vous utilisez cette variable sans vérifier null.
La variable nickname a le type string?, elle peut donc valoir null. L'opérateur ?? (null-coalescing) renvoie "Anonymous" si nickname vaut null, displayName a donc toujours une valeur et l'accès à Length est sûr. Le résultat affiché est Anonymous (9).
Exemple C# exécutable
using System;
class Program
{
static void Main()
{
string? nickname = null;
string displayName = nickname ?? "Anonymous";
Console.WriteLine($"{displayName} ({displayName.Length})");
}
}
Anonymous (9)