📜  lambda C# 选择任何执行操作列表调用函数 - C# (1)

📅  最后修改于: 2023-12-03 15:02:34.089000             🧑  作者: Mango

Lambda C# 选择任何执行操作列表调用函数 - C#

在 C# 中,lambda 表达式是一种匿名函数,允许您快速创建一个函数并将其传递给其他方法或存储在变量中。可以使用 lambda 表达式来选择任何执行操作列表调用函数。

基本语法

lambda 表达式有几种语法,其中最基本的形式如下:

(parameter_list) => expression

其中,parameter_list 是输入参数列表,expression 是返回值表达式。

例如,创建一个简单的 lambda 表达式,将两个整数相加,可以使用以下代码:

(int a, int b) => a + b

该 lambda 表达式接受两个整数作为输入参数,并返回它们的和。

在 LINQ 中使用 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 类型的参数传递给 ProcessNumbers 方法。

总结

lambda 表达式是一种强大的工具,可以帮助您快速编写简洁的代码。在 C# 中,lambda 表达式最常用的地方是在 LINQ 查询中,但它们也可以用作委托,并在其他许多场合发挥作用。