如何从列表C#中删除重复项

时间:2016-12-27 23:33:55

标签: c# string linq list duplicates

我想获得与此代码相同的结果,以删除文本文档的重复项:

 File.WriteAllLines(@"doc.txt", lines.Select(line1 => line1.Trim()).Distinct().ToArray());

加载到列表或加载阶段但没有来自已处理文件的大型内容列表相同:

List<string> contentList = new List<string>(); 

阅读内容我这样使用它:

for (int i = 0; i < contentList.Count; i++)
{                        
     textBox8.AppendText(contentList[i] + "\n");                        
}

并且在加载阶段也在循环字符串内部按字符串:

contentList.Add(inputStr);

如果我在里面有重复项,那么期望的结果是避免重复:

one
two
three
four
two
five
six
three

期望的结果应该是:

one
two
three
four    
five
six

1 个答案:

答案 0 :(得分:3)

如果您有字符串列表,可以使用LINQ的Distinct()方法。

var result = contentList.Distinct();

如果您有对象列表,那么您将需要实现自定义相等比较器,这将允许您应用自定义的不同规则。

请确保您已包含System.Linq命名空间。