Lambda表达式补习(基础用法)

我刚开始学C#的时候,课程中在讲Lambda表达式的时候,我并没有觉得它有多重要。所以也并没有非常重视这块部分的知识。等到现在我在学习ASP.NET Core的时候我才发现这个Lambda表达式真的是非常重要的一个知识。所以我决定来补习一下这块的知识。

Lambda

一、什么是Lambda表达式

Lambda表达式可以简单的理解为一个匿名的委托实例

二、为什么要用到Lambda表达式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;

namespace demo
{
class Program
{
static void Main(string[] args)
{
Calculator calculator = new Calculator();
var func = new Func<int, int,int> (calculator.Add);
var res = func1(2,3);
System.Console.WriteLine(res);
}
}
class Calculator{
public int Add(int x, int y){
return x + y;
}
}

}

这是一个简单的Add方法, 就是将两个数字相加起来

这个时候我们可以用一个比较简洁的Lambda表达式来替换Calculator类里面的Add方法

1
public int Add(int x, int y) => x + y;

使用Lambda表达式,就可以用一行代码来声明一个方法

同理 Main 方法里面的定义的委托我们也可以用 Lambda表达式 来简化

1
Func<int, int, int> func = ( x, y ) => x + y;

简单的来说,使用Lambda表达式可以减少代码的篇幅,可以增加可读性

当然Lambda表达式的作用远远不止这些;在很多特定的时候,比如LINQ中,我们要用到比较大量的Lambda表达式

等我学习回来 再继续写Lambda表达式的进阶用法……