我需要使用 linq 从列表中选择重复项并返回每个数组都包含重复项的数组列表。例如,如果我的清单是
{2,2,3,13,4,4,15,5,7,8,9,12,13}
然后我需要退回
{2,2},{4,4}
以下代码仅为每个重复项返回一个值
int[] listOfItems = new[] {2,2,3,13,4,4,15,5,7,8,9,12,13};
var duplicates = listOfItems
.GroupBy(i => i)
.Where(g => g.Count() > 1)
.Select(g => g.Key);
foreach (var d in duplicates)
Console.WriteLine(d);
这会产生以下结果:
4
2