c# - 如何提取列表中具有相同值的项目数?

标签 c# winforms list

我有多个合并在一起的 ID 的 int 列表。我需要获得与特定数量的重复总数相匹配的 ID。例如:

int g=3;
List<int> mainlist = new List<int>();
List<int> list1 = new List<int>{1,2,3,4,5,6,7,8,9};
List<int> list2 = new List<int>{2,3,4,5,7,8,9};
List<int> list3 = new List<int>{1,3,5,6,7,9};

mainlist = list1.Concat(list2).Concat(list3).Tolist();

我想获取重复数等于g的ID

最佳答案

您可以对您的mainlist 进行分组,并仅选择其中Count() == g 的这些组:

var IDs = mainlist.GroupBy(n => n).Where(n => n.Count() == g).Select(n => n.Key);

关于c# - 如何提取列表中具有相同值的项目数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21510098/

相关文章:

c# - if else 和 return 的区别

c# - Net Core Connection String Dapper visual studio 2017

list - 如何验证列表是否已排序?

c# - 使用 C# 在 Windows 7 中创建 Metro 风格的 Winform

c# - 从 List<KeyValuePair<string,string>> 返回匹配项

Python:理解 append 和扩展之间的区别

c# - 简单的 Windows 窗体/WPF 应用程序是否可以在适用于平板电脑的 Windows 8 上运行?

c# - 在 C# 中,如何捕获 Web 服务调用中使用的 SOAP?

c# - 应用程序完成后,为什么运行时值出现在设计模式中?

c# - Winforms:具有数千个用户控件的可滚动 FlowLayoutPanel - 如何防止内存泄漏并以正确的方式处理对象?