Как добавить перечислимую коллекцию в существующий список в С#
У меня есть три функции, возвращающие коллекцию IEnumerable.
теперь я хочу объединить все это в один список.
поэтому есть ли какой-либо метод, с помощью которого я могу добавлять элементы из IEnumerable в список.
я имею в виду без каждого цикла?
Ответы
Ответ 1
Ну, что-то должно будет зациклиться... но в LINQ вы можете легко использовать Concat
и ToList
методы расширения:
var bigList = list1.Concat(list2).Concat(list3).ToList();
Обратите внимание, что это создаст новый список, а не добавит элементы в существующий список. Если вы хотите добавить их в существующий список, List<T>.AddRange
, вероятно, вы после этого:
bigList.AddRange(list1);
bigList.AddRange(list2);
bigList.AddRange(list3);
Ответ 2
Если у вас уже есть список:
list.AddRange(yourCollectionToAppend);
Если у вас есть 2 перечисления и еще не создали список:
firstCollection.Concat(secondCollection).ToList();