=>, opérateur (Référence C#)
Mise à jour : novembre 2007
Le jeton => est appelé « opérateur lambda ». Il est utilisé dans les expressions lambda pour séparer les variables d'entrée à gauche du corps lambda à droite. Les expressions lambda sont des expressions inline semblables aux méthodes anonymes, mais plus souples ; elles sont largement utilisées dans les requêtes LINQ qui sont exprimées dans la syntaxe de méthode. Pour plus d'informations, consultez Expressions lambda (Guide de programmation C#).
string[] words = { "cherry", "apple", "blueberry" };
int shortestWord = words.Min(w => w.Length);
Notes
L'opérateur => se lit « est redirigé vers ». Dans l'exemple précédent, l'expression se lit «Min w est redirigé vers w point Length ».
L'opérateur => a la même priorité que l'opérateur d'assignation (=) et est associatif à droite.
Vous pouvez spécifier explicitement le type de la variable d'entrée ou laisser le compilateur le déduire ; dans les deux cas, la variable est fortement typée à la compilation. Lorsque vous spécifiez un type, vous devez mettre le nom de type et le nom de variable entre parenthèses, comme indiqué dans l'exemple suivant :
int shortestWord = words.Min((string w) => w.Length);
Les variables d'entrée multiples sont mises entre parenthèses, comme indiqué plus loin dans cette rubrique.
Exemple
L'exemple suivant indique comment écrire une expression lambda pour l'opérateur de requête standard Enumerable.Where avec deux variables d'entrée. Cette expression retourne toutes les chaînes dont les longueurs sont inférieures à leurs positions d'index dans le tableau.
string[] digits = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };
var shortDigits = digits.Where((digit, index) => digit.Length < index);
Voir aussi
Concepts
Référence
Expressions lambda (Guide de programmation C#)