我如何将一个List <int>分组并返回一个List <int>

Bil*_*wer 0 c# linq group-by list

我有一个整数列表。我想对列表进行分组并创建一个新列表,该列表仅包含符合特定条件的按数字分组的列表。这是我到目前为止所拥有的。对membersList的声明是List

int rows = 5;

List<int> memberKeys = memberKeysList
  .GroupBy(x => x)
  .Where(x => x.Count() == rows)
  .ToList();
Run Code Online (Sandbox Code Playgroud)

它抱怨从groupedby列表转换为列表。

Hab*_*bib 5

您需要SelectKey得到像数:

List<int> memberKeys = memberKeysList.GroupBy(x => x)
                           .Where(x => x.Count() == rows)
                           .Select(grp => grp.Key)
                           .ToList();
Run Code Online (Sandbox Code Playgroud)

如果您不打算明确选择它们Key (或数字),则GroupBy子句的结果为IEnumerable<IGrouping<TKey, TElement>>