原文链接:https://blog.csdn.net/weixin_57718347/article/details/130384704
Lambda表达式是C#中的一种匿名函数,通常用于简化代码和提高效率。以下是一些常见的Lambda表达式:
1. 基本Lambda表达式:(x) => x + 1 ; 表示接受一个参数x,并返回x+1。
2. 带多个参数的Lambda表达式:(x, y) => x + y ; 表示接受两个参数x和y,并返回他们的和。
3. 带返回值的Lambda表达式:
(x) => {
int y = x * 2;
return y;
}
表示接受一个参数x,并返回它的两倍。
4. 作为参数的Lambda表达式:
List<int> numbers = new List<int>() {1, 2, 3, 4, 5};
var evenNumbers = numbers.Where(x => x % 2 == 0);
表示在一个列表中寻找偶数。Where方法接受一个Lambda表达式,用于筛选元素。
5. Lambda表达式与LINQ:
var students = new List<Student>()
{
new Student("Alice", 20),
new Student("Bob", 21),
new Student("Charlie", 19)
};
var result = students.Where(x => x.Age >= 20)
.OrderByDescending(x => x.Age)
.Select(x => x.Name);
表示从一个包含学生信息的列表中,选出年龄大于或等于20的学生,按照年龄倒序排序,并仅返回他们的姓名。
6. Lambda表达式与委托:
delegate int Operation(int x, int y);
Operation add = (x, y) => x + y;
Operation subtract = (x, y) => x - y;
表示定义了两个委托add和subtract,分别表示加法和减法运算,使用Lambda表达式定义它们的操作。