LambdaExpression.md 793 字节
Newer Older
M
Mars Liu 已提交
1
# C# 3.0 特性 Lambda 表达式
2

M
Mars Liu 已提交
3
Lambda表达式可采用表达式为其主体,也可以采用语句块作为其主体:
4 5 6 7 8 9

```csharp
(input-parameters) => expression
(input-parameters) => { <sequence-of-statements> }
```

M
Mars Liu 已提交
10
Lambda表达式可以没有参数,如果有参数需要在左侧添加,任何 Lambda 表达式都可以转换为委托类型。
11

M
Mars Liu 已提交
12
在下列选项中,没有编译错误并且可以输出5的平方的是:
13

M
Mars Liu 已提交
14
## 答案
15 16 17 18 19 20

```csharp
Func<int, int> square = x => x * x;
Console.WriteLine(square(5));
```

M
Mars Liu 已提交
21
## 选项
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

### A

```csharp
Func<int, int> square = () => x * x;
Console.WriteLine(square(5));
```

### B

```csharp
Func<int, int> square = x * x;
Console.WriteLine(square(5));
```

### C

```csharp
Func<int, int> square => x * x;
Console.WriteLine(square(5));
```