假设我有以下内容:
LinkedList<int> list1 = new LinkedList<int>();
LinkedList<int> list2 = new LinkedList<int>();
list1.AddLast(1);
list1.AddLast(2);
list2.AddLast(1);
list2.AddLast(2);
据我所知,你不能做以下事情;
list1.AddLast(list2.First);
除了要连接在一起的列表之外。
在C#中合并两个LinkedLists的正确方法是什么?我知道有一个Union()
方法,但似乎C ++中LinkedList的强大之处在于,如果需要,你可以轻松地组合和拆分列表。
LinkedList类不支持链接,拆分,循环, 或其他可能使列表处于不一致状态的功能。
答案 0 :(得分:3)
如果您使用List
而不是LinkedList
,也同样简单。以下是完成整个列表的几种方法。
LINQ;
var combinedList = list1.Concat(list2).ToList();
我在msdn上找到的其他方式;
List<int> combinedList = new List<int>();
combinedList.AddRange(list1);
combinedList.AddRange(list2);