在列表的开头添加一系列项目?

28

List<T>.AddRange(IEnumerable<T>) 方法可以将一组元素添加到列表的末尾:

myList.AddRange(moreItems); // Adds moreItems to the end of myList

如何将一组项(如IEnumerable<T>)添加到列表的开头是最有效的方法?


你尝试过哪些方法?又是什么让你觉得有比那更好的东西呢? - O. R. Mapper
只需一眼看到可用方法列表,就能回答这个问题... - Ivan Golović
1
抱歉,我从来没有想过要查看“插入...”。 - Dave New
4个回答

52

使用InsertRange方法:

 myList.InsertRange(0, moreItems);

4

使用InsertRange方法:

 List<T>.InsertRange(0, yourcollection);

同时查看插入方法,可以在指定索引处向列表中添加元素。

将一个元素插入到列表中指定的索引位置。

List<T>.Insert(0, T);

2
List<String> listA=new List<String>{"A","B","C"};
List<String> listB=new List<String>{"p","Q","R"};

listA.InsertRange(0, listB);    

在这里,假设我们有两个字符串列表...然后使用InsertRange方法,我们可以传递想要将新范围(listB)插入/推入现有范围(listA)的起始索引。

希望这样可以使代码更加清晰易懂。


不要只贴一段代码,还请解释为什么这段代码可以解决所提出的问题。没有解释,这不是一个答案。 - Martijn Pieters

1
请尝试使用 List<T>.InsertRange(0, IEnumerable<T>)

一些解释将有助于这个答案。 - dove

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接