2013-04-09 45 views
-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#中的代碼。

回答

2

如果prodIEnumerable<string>,你可以做到這一點使用LINQ

var results = 
    (from s in prod 
    group s by s into g 
    where g.Count() == itemCount 
    select g.Key) 
    .ToArray(); 
1

我認爲prod是一般List<string>IEnumerable<string>

var items = prod.GroupBy(x => x) 
       .Where(g => g.Count() == itemCount) 
       .Select(g => g.Key) 
       .ToArray();