我有一个整数列表。我想对列表进行分组,并创建一个新列表,其中只包含符合某些条件的分组数字。这是我目前的代码。声明membersList为List:
int rows = 5;
List<int> memberKeys = memberKeysList
.GroupBy(x => x)
.Where(x => x.Count() == rows)
.ToList();
它在抱怨将分组列表转换为列表。
您需要选择 Key
以获取类似以下数字:
List<int> memberKeys = memberKeysList.GroupBy(x => x)
.Where(x => x.Count() == rows)
.Select(grp => grp.Key)
.ToList();
如果您不会明确选择他们的键
(或数字),则GroupBy
子句的结果将是IEnumerable<IGrouping<TKey,TElement>>
Where
可能匹配多个组)。如果你只想使用符合条件的第一个组,将你的Where
改为FirstOrDefault
。 - heavyd