在C#中,使用LINQ(Language Integrated Query)可以非常高效地进行分组查询和计数操作。以下是一个示例,展示了如何在分组查询中使用Count()
方法:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main(string[] args)
{
// 创建一个示例列表
List people = new List
{
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 25 },
new Person { Name = "Charlie", Age = 30 },
new Person { Name = "David", Age = 28 },
new Person { Name = "Eva", Age = 25 }
};
// 使用LINQ进行分组查询,并计算每个分组的数量
var groupedPeople = from person in people
group person by person.Age into ageGroup
select new
{
Age = ageGroup.Key,
Count = ageGroup.Count()
};
// 输出结果
foreach (var group in groupedPeople)
{
Console.WriteLine($"Age: {group.Age}, Count: {group.Count}");
}
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
在这个示例中,我们首先创建了一个包含5个人的列表。然后,我们使用LINQ对这个列表进行分组查询,按照年龄进行分组,并计算每个分组的数量。最后,我们遍历结果并输出每个分组的年龄和数量。
运行此程序,您将看到以下输出:
Age: 30, Count: 2 Age: 25, Count: 2 Age: 28, Count: 1
这表明在这个列表中,有2个人的年龄是30岁,2个人的年龄是25岁,1个人的年龄是28岁。通过使用LINQ的Count()
方法,我们可以轻松地计算每个分组的数量,从而实现高效的分组查询。