Wichtige C#-Themen

Nullable-Referenztypen in C#

In dieser Lektion verwendest du Nullable-Referenztypen, damit der Compiler dir hilft, Stellen mit möglichen null-Werten zu finden.

Einführung

Der Fehler NullReferenceException tritt auf, wenn du auf eine Variable zugreifst, die null ist, und er gehört zu den häufigsten Fehlern überhaupt. In C# kannst du mit dem Zeichen ? ausdrücklich kennzeichnen, welche Variablen null sein dürfen, etwa string?. Dann warnt der Compiler, wenn du eine solche Variable ohne null-Prüfung verwendest.

Die Variable nickname hat den Typ string? und darf deshalb null sein. Der Operator ?? (null-coalescing) liefert "Anonymous", wenn nickname null ist, deshalb hat displayName immer einen Wert, und der Zugriff auf Length ist sicher. Die Ausgabe ist Anonymous (9).

Ausführbares C#-Beispiel

C#
Code ausführen →
Program.cs
using System;

class Program
{
    static void Main()
    {
        string? nickname = null;
        string displayName = nickname ?? "Anonymous";
        Console.WriteLine($"{displayName} ({displayName.Length})");
    }
}
Ergebnis der Ausführung
Anonymous (9)

Mit dem Debugger üben

Setze einen Haltepunkt auf eine wichtige Zuweisung oder Bedingung, klicke auf Debug und sieh dir die lokalen Werte an, bevor du zur nächsten Zeile gehst.