-2
int itemCount=3;

prod.Add("P1");
prod.Add("P2");
prod.Add("P1");
prod.Add("P2");
prod.Add("P1");
prod.Add("P3");

在此产品列表中,我想获取每个项目的计数,如果计数匹配,itemCount则需要将其放入数组中。

在这种情况下,只有 P1 必须放入数组。

谁能帮我吗?我想要 C# 中的代码。

4

2 回答 2

2

如果prod是 a IEnumerable<string>,您可以使用 linq 执行此操作

var results =
    (from s in prod
     group s by s into g
     where g.Count() == itemCount
     select g.Key)
    .ToArray();
于 2013-04-09T17:29:37.963 回答
1

我认为这prodList<string>IEnumerable<string>一般来说:

var items = prod.GroupBy(x => x)
                .Where(g => g.Count() == itemCount)
                .Select(g => g.Key)
                .ToArray();
于 2013-04-09T17:29:54.680 回答