= > Operátor (C#-Reference)
=> Token se nazývá operátor lambda.Používá se v lambda výrazy oddělit vstupní proměnné na levé straně lambda subjektu na pravé straně.Lambda výrazy jsou vložené výrazy podobné anonymní metody ale pružnější; jsou široce používány v LINQ dotazy, které jsou vyjádřeny v syntaxi metody.Další informace naleznete v tématu Lambda výrazy (Příručka programování C#).
string[] words = { "cherry", "apple", "blueberry" };
int shortestWordLength = words.Min(w => w.Length);
Console.WriteLine(shortestWordLength);
// Output: 5
Poznámky
=> Operátor je číst jako "přejde k". V předchozím příkladu je číst výraz jako "Min w dosáhne w tečkou délka".
=> Operátor má stejné priority jako operátor přiřazení (=) a je zprava asociativní.
Můžete explicitně zadat typ vstupní proměnné nebo nechat kompilátor odvodit v obou případech je silný proměnné v době kompilace.Při zadávání typu, je nutné uzavřít název typ a název proměnné v závorkách, jak ukazuje následující příklad:
int shortestWordLength = words.Min((string w) => w.Length);
Více vstupní proměnné jsou uvedeny v závorkách, viz pozdější příklad v tomto tématu.
Příklad
Následující příklad ukazuje, jak psát lambda výraz pro standardní operátor dotazu Enumerable.Where s dvě proměnné.Tento výraz vrátí všechny řetězce, jehož délka je menší než jejich pozice indexu v poli.
string[] digits = { "zero", "one", "two", "three", "four", "five",
"six", "seven", "eight", "nine" };
var shortDigits = digits.Where((digit, index) => digit.Length < index);
foreach (var sD in shortDigits)
{
Console.WriteLine(sD);
}
// Output:
// five
// six
// seven
// eight
// nine
Viz také
Referenční dokumentace
Lambda výrazy (Příručka programování C#)