我试图获取存储在列表中的元素的频率.
我将以下ID存储在我的列表中
ID
1
2
1
3
3
4
4
4
Run Code Online (Sandbox Code Playgroud)
我想要以下输出:
ID| Count
1 | 2
2 | 1
3 | 2
4 | 3
Run Code Online (Sandbox Code Playgroud)
在java中,您可以执行以下方法.
for (String temp : hashset)
{
System.out.println(temp + ": " + Collections.frequency(list, temp));
}
Run Code Online (Sandbox Code Playgroud)
资料来源:http://www.mkyong.com/java/how-to-count-duplicated-items-in-java-list/
如何获取c#中列表的频率计数?
谢谢.
key*_*rdP 11
您可以使用LINQ
var frequency = myList.GroupBy(x => x).ToDictionary(x => x.Key, x => x.Count());
Run Code Online (Sandbox Code Playgroud)
这将创建一个Dictionary对象,其中键是,ID并且值是ID出现的次数.
using System.Linq;
List<int> ids = //
foreach(var grp in ids.GroupBy(i => i))
{
Console.WriteLine("{0} : {1}", grp.Key, grp.Count());
}
Run Code Online (Sandbox Code Playgroud)