csharp / intermediate
Snippet
Sequenzstrukturen abgleichen mit Listenmustern
Listenmuster ermöglichen den Abgleich von Arrays oder Listen mit einer bestimmten Sequenz von Elementen. Die Verwendung des Discards (_) oder des Range-Operators (..) erlaubt eine flexible Validierung von Datenstrukturen basierend auf ihrem positionalen Inhalt.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
10
string[] tags = { "v1", "beta", "prod" };if (tags is ["v1", var status, ..]){Console.WriteLine($"Current status: {status}");}// Matching empty or specific lengthsbool isEmpty = tags is [];bool hasThree = tags is [_, _, _];
Erklärung
1
tags is ["v1", var status, ..]
Prüft, ob das Array mit 'v1' beginnt, erfasst das zweite Element und ignoriert den Rest.
2
tags is []
Überprüft mit der Pattern-Matching-Syntax, ob die Sammlung leer ist.