TOC

This article has been localized into German by the community.

Operatoren:

NULL-Sammeloperator

Der ?? Operator wird auch als "Nullkoaleszenzoperator" bezeichnet, da Sie damit nach einem NULL-Wert suchen und in einer Codezeile einen "Fallback-Wert" zuweisen können. Dies scheint ohne diesen Operator trivial zu sein, aber betrachten Sie das folgende Beispiel:

string userSuppliedName = null; 

if (userSuppliedName == null)
    Console.WriteLine("Hello, Anonymous!");
else
    Console.WriteLine("Hello," + userSuppliedName);

Sie sollten sich die Variable userSuppliedName als etwas vorstellen, das vom Benutzer stammt, z.B.: aus einem Dialog oder einer Datendatei - etwas, was dazu führen könnte, dass der Wert NULL ist. Wir müssen uns damit befassen, indem wir den Wert prüfen, bevor wir ihn verwenden, in diesem Fall, um den Namen dem Benutzer anzuzeigen.

Im obigen Beispiel verwenden wir den klassischen if-else-Ansatz, aber mit dem Null-Koaleszenz-Operator können wir es viel kürzer machen, in einer einzigen Zeile:

Console.WriteLine("Hello, " + (userSuppliedName ?? "Anonymous")); 

In einer einzigen Anweisung bitten wir den Interpreter, die Variable userSuppliedName zu verwenden, wenn sie einen Wert hat. Wenn nicht, geben wir einen Fallback-Wert an, in diesem Fall den Namen "Anonymous". Kurz und einfach!

Zusammenfassung

Wie bei allen "syntaktischen Zuckern", wie dem Null-Koaleszenz-Operator, ist es immer ein Kompromiss, den Code kurz und lesbar zu halten. Einige finden, dass diese Operatoren es schwerer machen, den Code zu lesen und zu navigieren, während andere es lieben, wie kurz und einfach es ist. Am Ende ist alles Ihre Entscheidung!


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!