C # вопрос списка - PullRequest
       2

C # вопрос списка

0 голосов
/ 11 апреля 2011

Каким будет хороший способ сделать следующее действие:

List<IEnumerable<T>> listOfEnumerables = Get...();

List<T> listOfObjects = new List<T>();

// I want 'listOfObjects' to contain every element from every enumerable
// in 'listOfEnumerables'.

Есть ли какой-нибудь красивый способ сделать это вместо следующего:

foreach (var enumerable in listOfEnumerables)
{
    listOfObjects.AddRange(enumerable);
}

Спасибо.

Ответы [ 2 ]

9 голосов
/ 11 апреля 2011

Вы можете использовать LINQ:

List<T> listOfObjects = listOfEnumerables.SelectMany(s => s).ToList();
4 голосов
/ 11 апреля 2011
listOfEnumerables.ForEach(i => listOfObjects.AddRange(i));
...