[英]Removing duplicates from a list collection
希望可以有人幫幫我。 我正在使用c#,我對它有些新意。 我正在將一個文本文件加載到我的應用程序並將數據拆分為“,”我在讀取數據時讀取部分字符串到<list>
有很多重復項,這些重復項因我加載的txt文件而異。 有人可以告訴我如何檢查並刪除出現的任何和所有重復項。 沒有辦法知道重復會出現什么,因為它有無限的可能性。
我在這里先向您的幫助表示感謝
如果您的目標是.NET 3.5,請使用Distinct擴展方法:
var deduplicated = list.Distinct();
如果將字符串加載到Set
而不是List
則會自動丟棄重復項。
一個簡單/骯臟的例子如下:
public List<string> RemoveDuplicates(List<string> listWithDups)
{
cleanList = new List<string>();
foreach (string s in listWithDups)
{
if (!cleanList.Contains(s))
cleanList.Add(s);
}
return cleanList;
}
作為警告:非常大的字符串上的String.Split會導致消耗大量內存並導致異常。
這是一篇包含C#中的一些示例和解釋的文章。 基本上,您只需跟蹤唯一身份,並檢查每個元素。
亞歷克斯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.