C# 如何从列表中删除重复项
我有一个列表,如下所示C# 如何从列表中删除重复项,c#,list,duplicates,C#,List,Duplicates,我有一个列表,如下所示 List<List<String>> ListsToMerge 我需要从上面的列表中删除重复的条目并创建一个主列表 List<string> MergedList 试试这个:没有LINQ List<string> MergedList = new List<string>(); foreach(List<string> ls in ListsToMerge) { foreach(strin
List<List<String>> ListsToMerge
我需要从上面的列表中删除重复的条目并创建一个主列表
List<string> MergedList
试试这个:没有LINQ
List<string> MergedList = new List<string>();
foreach(List<string> ls in ListsToMerge)
{
foreach(string s in ls)
{
if(!MergedList.Contains(s))
{
MergedList.Add(s)
}
}
}
List MergedList=new List();
foreach(ListsToMerge中的列表ls)
{
foreach(ls中的字符串s)
{
如果(!MergedList.Contains))
{
合并列表。添加
}
}
}
试试这个:没有LINQ
List<string> MergedList = new List<string>();
foreach(List<string> ls in ListsToMerge)
{
foreach(string s in ls)
{
if(!MergedList.Contains(s))
{
MergedList.Add(s)
}
}
}
List MergedList=new List();
foreach(ListsToMerge中的列表ls)
{
foreach(ls中的字符串s)
{
如果(!MergedList.Contains))
{
合并列表。添加
}
}
}
您可以使用一些方便的Linq扩展方法来完成这项工作SelectMany
将展平列表并选择所有项目,Distinct
将删除所有重复项:
List<string> mergedLists = ListsToMerge.SelectMany(x => x).Distinct().ToList();
List mergedLists=ListsToMerge.SelectMany(x=>x.Distinct().ToList();
您可以使用一些方便的Linq扩展方法来完成这项工作SelectMany
将展平列表并选择所有项目,Distinct
将删除所有重复项:
List<string> mergedLists = ListsToMerge.SelectMany(x => x).Distinct().ToList();
List mergedLists=ListsToMerge.SelectMany(x=>x.Distinct().ToList();
var MergedList=ListsToMerge.SelectMany(z=>z.Distinct()
var MergedList=ListsToMerge.SelectMany(z=>z.Distinct()代码>.may be MergedList始终为空。@fliedonion什么意思?我想您没有初始化MergedList。所以如果(!MergedList.Contains))
引发空引用异常。可能MergedList总是空的。@fliedonion什么意思?我想您没有初始化MergedList。因此如果(!MergedList.Contains))
引发空引用异常。