两个列表的非标准连接
本文关键字:非标准 连接 列表 两个 | 更新日期: 2023-09-27 18:21:34
我有两个列表:list1
和list2
。我希望以不影响list1
中的值的方式加入列表,即使它包含重复的值。但是,在附加list2
中的值时,不应删除重复的值。
我尝试过Union
,它将区分所有值,并消除我在list1
中重复的值。
例如
list1 = [a, b, c, c, d, e]
list2 = [a,c,f,g]
my required solution
list3=[a, b, c, c, d, e, f, g]
var MyList = List1.Concat(List2.Except(List1).ToList());
var list3 = list1.ToList();
foreach (var val in list2)
{
if (!list3.Contains(val))
list3.Add(val);
}
这将为您提供一个包含list1和list2中所有值的新列表。
您可能想要使用类似的东西
var list1 = new List<int> {1, 2, 3, 3};
var list2 = new List<int> {1, 2, 3, 4, 5, 3};
var list3 = list1.Concat(list2.Except(list1)); // 1, 2, 3, 3, 4, 5