如何将两个C#列表拼接成一个?或者也许使用不同的收藏类型?

时间:2009-06-18 22:15:04

标签: c# generics collections

List<string> list1 = new List<string>();
list1.Add("Blah");
list1.Add("Bleh");
list1.Add("Blih");

List<string> list2 = new List<string>();
list2.Add("Ooga");
list2.Add("Booga");
list2.Add("Wooga");

是否有方法可以创建具有{"Blah", "Bleh", "Blih", "Ooga", "Booga", "Wooga"}的第三个列表,或者更改list1,因此它在list2中有三个额外的元素?

3 个答案:

答案 0 :(得分:8)

我想这是解决方案:

list1.AddRange(list2)

答案 1 :(得分:8)

使用LINQ,您可以:

List<string> list1 = new List<string>();
list1.Add("Blah");
list1.Add("Bleh");
list1.Add("Blih");

List<string> list2 = new List<string>();
list2.Add("Ooga");
list2.Add("Booga");
list2.Add("Wooga");

var finalList = list1.Concat( list2 ).ToList();

答案 2 :(得分:1)

看一下List的Union()方法。