如何用C# LINQ和Lambda实现自定义聚合函数

avatar
作者
猴君
阅读量:0

在C#中,您可以使用LINQ(Language Integrated Query)和Lambda表达式来实现自定义聚合函数

首先,我们需要一个数据集。假设我们有一个Person类,其中包含NameAge属性:

public class Person {     public string Name { get; set; }     public int Age { get; set; } } 

接下来,我们创建一个List<Person>作为数据集:

List<Person> people = new List<Person> {     new Person { Name = "Alice", Age = 30 },     new Person { Name = "Bob", Age = 25 },     new Person { Name = "Charlie", Age = 35 },     new Person { Name = "David", Age = 28 } }; 

现在,我们将实现一个自定义聚合函数,该函数计算给定年龄范围内的人数。我们将使用LINQ和Lambda表达式来实现这个功能:

using System.Linq;  int minAge = 25; int maxAge = 30;  int count = people.Count(p => p.Age >= minAge && p.Age <= maxAge);  Console.WriteLine($"Number of people between {minAge} and {maxAge}: {count}"); 

在这个例子中,我们使用了Count方法,它是一个聚合函数,用于计算满足条件的元素数量。我们传递了一个Lambda表达式p => p.Age >= minAge && p.Age <= maxAge作为条件,该条件检查每个Person对象的Age属性是否在指定的范围内。

运行此代码将输出:

Number of people between 25 and 30: 3 

这就是如何使用C# LINQ和Lambda表达式实现自定义聚合函数的方法。您可以根据需要修改条件和聚合操作,以满足您的特定需求。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!