Null-Conditional C# 6, der elegante Einzeiler

 

Ein neues Feature von C# 6.0 ist der Null-Conditional Operator.

Eine Referenzvariable kann einen Null Wert haben oder auf eine Instanz des passenden Types verweisen. Um eine NullReferenceException zu vermeiden sieht man nun häufig Code-Snippets ähnlich dem folgenden:

string testString = DateTime.Now.Hour == 5 ? "Five" : null;
// PreC#6: Prüfung auf null um Exception zu vermeiden
string ergebnisString;
if (testString != null)
ergebnisString = testString.Substring(0, 1);
//Der Null-Conditional Operator erlaubt nun den selben Check in kürzerer Schreibweise
// C#6 Null-Conditional operator
ergebnisString = testString?.Substring(0, 1);

Wenn sTest  nicht Null ist, wird die Substring Methode aufgerufen und Ihr Resultat sLeft zugewiesen.  Wenn sTest Null ist, gibt die Expression Null zurück, also wird sLeft ein Null Wert zugewiesen.

Und für mehr Infos zu C# empfehle ich einen Kurs bei der ppedv.

Kommentare sind geschlossen