3 分钟理解 Lambda 表达式






4.88/5 (223投票s)
Lambda 表达式简短教程
引言
Lambda 表达式是一种匿名函数,主要用于在 LINQ 中创建委托。 简单来说,它是一种没有声明的方法,即没有访问修饰符、返回值声明和名称。
方便性。 它是简写,允许您在将要使用它的地方编写方法。 特别是在方法仅使用一次且方法定义很短的情况下,它非常有用。 它为您节省了在包含类中声明和编写单独方法的精力。
优点
Lambda 表达式应该简短。 复杂的定义会使调用代码难以阅读。
Lambda 基本定义:参数 => 执行代码
- 什么是 Lambda 表达式?
- 为什么我们需要 lambda 表达式?(为什么我们需要编写一个没有名称的方法?)
- 减少了输入量。 无需指定函数名称、其返回类型及其访问修饰符。
- 阅读代码时,您无需在其他地方查找方法的定义。
- 如何定义 lambda 表达式?
简单示例
n => n % 2 == 1
n
是输入参数n % 2 == 1
是表达式
您可以将 n => n % 2 == 1
读作:“名为 n
的输入参数传递给匿名函数,如果输入是奇数,则返回 true
”。
相同的例子(现在执行 lambda)
List<int> numbers = new List<int>{11,37,52};
List<int> oddNumbers = numbers.where(n => n % 2 == 1).ToList();
//Now oddNumbers is equal to 11 and 37
好了,现在您已经了解了 Lambda 表达式的基础知识。
- 由于范围有限,我没有提及表达式树/lambda 表达式的运行时优势。