Sdílet prostřednictvím


= > 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#)

Koncepty

Příručka programování C#

Další zdroje

C#-Reference