通用列表中是否有内置函数可以从特定索引中添加另一个列表中的范围,还是必须自己编写?。
例如:
List<int> list1 = new List<int>();
List<int> list2 = new List<int>();
list1.Add(10);
list1.Add(20);
list1.Add(30);
list2.Add(100);
//list2.AddRange(list1, 1) Add from list1 from the index 1 till the end
在这个例子中,list2应该有3个元素:100,20和30.
我应该自己编写还是内置函数可以执行此操作?
答案 0 :(得分:6)
答案 1 :(得分:2)
List<int> list1 = new List<int>();
List<int> list2 = new List<int>();
list1.Add(10);
list1.Add(20);
list1.Add(30);
list2.Add(100);
list2.InsertRange(1,list1.Skip(1));
打印时的输出:
100
20
30
您可以将InsertRange与linq skip方法结合使用,该方法将跳过第一个元素。如果要在特定索引后插入。