日期:2014-05-20  浏览次数:20749 次

List<string>取重复项,新手求助
List<string> listStr 里面有多个相同项,用LINQ怎么取重复项?谢谢
------最佳解决方案--------------------
var query=list.GroupBy(l=>l).Where(g=>g.Count()>1).Select(g=>g.Key);
------其他解决方案--------------------
            List<string> list = new List<string>();
            list.Add("A");
            list.Add("C");
            list.Add("E");
            list.Add("B");
            list.Add("D");
            list.Add("A");
            list.Add("C");

           var query= list.Where(i => list.Count(j=>j==i)>1).Distinct();

            foreach (var i in query)
            {
                Console.WriteLine(i.ToString());
            }
------其他解决方案--------------------
楼上正解!
------其他解决方案--------------------
引用:
var query=list.GroupBy(l=>l).Where(g=>g.Count()>1).Select(g=>g.Key);

大牛的回复确实好
------其他解决方案--------------------
谢谢大家。。是不是用distinct不好?