c#中对列表元素进行分组
本文关键字:列表元素 | 更新日期: 2023-09-27 18:09:25
我有以下列表:
List<string> data = new List<string>();
然后我通过获取MySQL请求的结果来填充它:
data.Add(name);
该列表已被填充,但我想进行分组,并希望获得列表中每个名称的数量:
<>之前name A = X;name B = X;等等……之前我尝试使用data.GroupBy(data, data.Count)
,但没有工作。
有什么建议吗?
试试这个:
from d in data
group d by d.Name into gds
select new
{
Name = gds.Key,
Count = gds.Count(),
}
试试这个:
string[] foo = new string[]{"foo","foo","bar","foo","baz","foo"};
var grouping = foo.ToList().GroupBy(x=>x);
foreach (var s in grouping.OrderByDescending(x=>x.Count()))
{
Console.WriteLine(s.Key + " - " + s.Count().ToString());
}