C# linq lambda 查找对象集合 特定对象属性 最大值
时间: 2024-09-27 18:10:41 浏览: 35
C# Linq lambda表达式.doc
在C#中,Linq Lambda表达式提供了一种简洁的方式来处理集合数据。如果你想从对象集合中查找特定属性的最大值,可以使用`Max()`函数配合Lambda表达式。假设你有一个`Person`对象的列表,每个`Person`都有`Age`属性,你可以这样做:
```csharp
List<Person> people = GetPeopleList(); // 假设这是你的人员列表
int maxAge = people.Max(p => p.Age); // 使用Lambda表达式找出年龄最大的人
// 或者如果你有自定义的比较规则,可以传递一个函数作为参数
Func<Person, int> ageComparer = p => p.ComplexProperty; // 假设ComplexProperty影响最大值判断
int customMax = people.Max(ageComparer);
```
这里的关键点是Lambda表达式 `p => p.Age`,它定义了一个匿名函数,接受一个`Person`类型的参数并返回其`Age`属性的值。`Max()`方法则会遍历整个集合,找到该属性的最大值。
阅读全文