📅  最后修改于: 2023-12-03 15:02:34.089000             🧑  作者: Mango
在 C# 中,lambda 表达式是一种匿名函数,允许您快速创建一个函数并将其传递给其他方法或存储在变量中。可以使用 lambda 表达式来选择任何执行操作列表调用函数。
lambda 表达式有几种语法,其中最基本的形式如下:
(parameter_list) => expression
其中,parameter_list 是输入参数列表,expression 是返回值表达式。
例如,创建一个简单的 lambda 表达式,将两个整数相加,可以使用以下代码:
(int a, int b) => a + b
该 lambda 表达式接受两个整数作为输入参数,并返回它们的和。
在 C# 中,lambda 表达式最常用的地方是在 LINQ 查询中,可以使用它来筛选、排序或映射数据。
例如,以下代码使用 lambda 表达式来过滤列表中的偶数,并将结果排序:
var numbers = new List<int> { 1, 2, 3, 4, 5, 6 };
var evenNumbers = numbers.Where(num => num % 2 == 0).OrderBy(num => num);
在这个例子中,lambda 表达式 (num => num % 2 == 0)
用于过滤偶数。而 num => num
用于对结果排序。
除了在 LINQ 查询中使用 lambda 表达式之外,它们还经常用作委托。以下是一个简单的例子,将 lambda 表达式传递给方法:
public static void ProcessNumbers(List<int> numbers, Action<int> process)
{
foreach (int number in numbers)
{
process(number);
}
}
var numbers = new List<int> { 1, 2, 3, 4, 5 };
ProcessNumbers(numbers, n => Console.WriteLine(n));
在这个例子中,lambda 表达式 (n => Console.WriteLine(n))
作为一个 Action
lambda 表达式是一种强大的工具,可以帮助您快速编写简洁的代码。在 C# 中,lambda 表达式最常用的地方是在 LINQ 查询中,但它们也可以用作委托,并在其他许多场合发挥作用。