c#的lambda表达式与list
时间: 2024-10-29 14:06:02 浏览: 11
C#的Lambda表达式是一种简洁、匿名的函数表示形式,它可以直接用于LINQ查询(Language Integrated Query)和委托场合,使得代码更加紧凑和易于理解。在处理List集合时,Lambda表达式非常有用:
1. **筛选操作**:例如,如果你想从一个List<int>中筛选出所有偶数,可以这样做:
```csharp
List<int> numbers = new List<int>{1, 2, 3, 4, 5};
var evenNumbers = numbers.Where(x => x % 2 == 0);
```
这里`Where`方法接受一个Lambda表达式作为参数,该表达式`(x => x % 2 == 0)`表示输入元素`x`如果能被2整除,则返回true。
2. **排序操作**:同样地,可以用Lambda表达式对List进行排序:
```csharp
List<string> names = new List<string>{"Alice", "Bob", "Charlie"};
var sortedNames = names.OrderBy(name => name.Length);
```
`OrderBy`方法通过比较每个名字长度的Lambda表达式来确定排序顺序。
3. **事件处理**:Lambda表达式也可以用作事件处理器,如简化按钮点击事件:
```csharp
button.Click += (sender, e) => Console.WriteLine("Button clicked");
```
阅读全文