Classer des données avec le filtrage par motif en C#
Dans cette leçon, vous allez classer des valeurs de différents types avec des motifs de type, de comparaison et de propriété.
Introduction
Avec le filtrage par motif, vous combinez dans une même expression la vérification du type, le test de la valeur et l'extraction des données. Cet exercice construit une fonction de classement qui accepte n'importe quelle valeur et renvoie une description adaptée.
Le motif int and >= 18 correspond aux entiers supérieurs ou égaux à 18. Le motif string { Length: 0 } correspond à la chaîne vide, après avoir confirmé que la valeur est bien une chaîne. Le motif string text correspond à toutes les autres chaînes et place la valeur dans la variable text. Comme "CSharp" contient 6 caractères, le résultat est text(6).
Exemple C# exécutable
using System;
class Program
{
static string Classify(object? value) => value switch
{
int and >= 18 => "adult age", string { Length: 0 } => "empty text",
string text => $"text({text.Length})", null => "null", _ => "other"
};
static void Main() => Console.WriteLine(Classify("CSharp"));
}
text(6)S'entraîner avec le débogueur
S'entraîner avec un défi
Utilisez le contenu de cette leçon pour résoudre un vrai problème. Chaque défi s'exécute dans le navigateur, avec des tests instantanés et une revue par l'IA.
Tous les défis