C# Lambda表示式
阿新 • • 發佈:2020-12-26
Lambda 表示式
1.表示式形式
(input-parameters) => expression
2.
在上面的示例中,請注意,條件表示式 (num % 2 == 0
) 作為內聯引數傳遞給Where
方法:Where(num => num % 2 == 0).
此內聯表示式稱為 lambda 表示式。可採用匿名方法、泛型委託或表示式樹的形式編寫原本必須以更繁瑣的形式編寫的程式碼,這是一種便利的方式。在 C# 中,=>
是 lambda 運算子(讀為“轉到”)。運算子左側的num
是輸入變數,它與查詢表示式中的num
對應。編譯器可以推斷出num
的型別,因為它知道numbers
是泛型 IEnumerable<T>型別。Lambda 的主體與查詢語法中或任何其他 C# 表示式或語句中的表示式完全相同;它可以包含方法呼叫和其他複雜邏輯。“返回值”就是表示式結果。
若要開始使用 LINQ,不必大量使用 lambda。但是,某些查詢只能採用方法語法進行表示,而其中一些查詢需要 lambda 表示式。進一步熟悉 lambda 之後,你會發現它們是 LINQ 工具箱中一種強大而靈活的工具