共用方式為


=> 運算子 (C# 參考)

=> 語彙基元又稱為 Lambda 運算子。 它會在「Lambda 運算式」(Lambda Expression) 中使用,以分開右邊的 Lambda 主體和左邊的輸入變數。 Lambda 運算式是類似匿名方法 (Anonymous Method) 的內嵌 (Inline) 運算式,但更有彈性。它會在以方法語法所表示的 LINQ 查詢中大量使用。 如需詳細資訊,請參閱Lambda 運算式 (C# 程式設計手冊)

string[] words = { "cherry", "apple", "blueberry" };
int shortestWordLength = words.Min(w => w.Length);
Console.WriteLine(shortestWordLength);
// Output: 5

備註

=> 運算子讀為 "goes to"。在前一個範例中,該運算式讀為 "Min w goes to w dot Length"。

=> 運算子和指派運算子 (=) 具有相同的優先順序,而且是右向關聯的。

您可以明確指定輸入變數的型別,或者讓編譯器 (Compiler) 推斷該型別。在這些情況下,變數在編譯時期會為強型別 (Strongly Typed)。 指定型別時,必須以括弧括住型別名稱和變數名稱,如下列範例所示:

int shortestWordLength = words.Min((string w) => w.Length);

括弧內可括住多個變數,如本主題後面的範例所示。

範例

下列範例示範如何為標準查詢運算子 Enumerable.Where 撰寫具有兩個輸入變數的 Lambda 運算式。 這個運算式會傳回所有長度小於陣列中之索引位置的字串。

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

請參閱

參考

Lambda 運算式 (C# 程式設計手冊)

概念

C# 程式設計手冊

其他資源

C# 參考