学堂 学堂 学堂公众号手机端

在C#中,GroupBy方法用于将集合中的元素按照指定的键进行分组。它返回一个包含分组后的结果的IEnumerable<IGrouping<TKey,TElement>>对象,其中TKey是分组的键的类型,TElement是集合中元素的类型。 GroupBy方法有多个重载形式,最常用的形式接受一个Func<

lewis 1年前 (2024-04-10) 阅读数 12 #技术

在C#中,GroupBy方法用于将集合中的元素按照指定的键进行分组。它返回一个包含分组后的结果的IEnumerable<IGrouping<TKey,TElement>>对象,其中TKey是分组的键的类型,TElement是集合中元素的类型。

GroupBy方法有多个重载形式,最常用的形式接受一个Func<TSource,TKey>参数,该参数定义了用于分组的键的选择器函数。例如,以下示例将一个字符串集合按照字符串的长度进行分组:

List<string>strings=newList<string>{"apple","banana","orange","pear","grape"}; vargroups=strings.GroupBy(s=>s.Length); foreach(vargroupingroups) { Console.WriteLine($"Groupkey:{group.Key}"); foreach(varelementingroup) { Console.WriteLine($"Element:{element}"); } Console.WriteLine(); }

输出:


Groupkey:5 Element:apple Element:grape Groupkey:6 Element:banana Groupkey:6 Element:orange Groupkey:4 Element:pear

在上面的示例中,strings.GroupBy(s=>s.Length)将字符串集合按照字符串的长度进行分组,并返回一个包含4个分组的IEnumerable<IGrouping<int,string>>对象。每个分组都有一个键(字符串的长度),可以通过group.Key访问。每个分组都是一个可迭代的集合,可以通过group访问。

版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门