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

JCC*_*CyC 1 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");
Run Code Online (Sandbox Code Playgroud)

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

Eug*_*ica 8

我猜这是解决方案:

list1.AddRange(list2)
Run Code Online (Sandbox Code Playgroud)


TcK*_*cKs 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();
Run Code Online (Sandbox Code Playgroud)