如何将列表 >转换为列表 [重复]

问题描述 投票:-1回答:2

我需要一些帮助。我有IEnumerable整数列表,我需要将其转换为整数列表。我可以是函数或lambda表达式,没关系。

    List<IEnumerable<int>>inputList => List<int>outputList

提前感谢!

c# list ienumerable convert
2个回答
4
投票

您可以这样使用LINQ:

var outputList = inputList.SelectMany(x => x).ToList();

2
投票

您可以使用Enumerable.SelectMany方法将序列的每个元素投影到IEnumerable<T>,这会将得到的序列展平为一个序列。

List<IEnumerable<int>> lst = new List<IEnumerable<int>>() {
                new List<int> {1, 2, 3},
                new List<int> {12} };
var flattend = lst.SelectMany(item => item); //returns IEnumerable<int>
//If you wanted to convert it to a the flattent result into List, then call the ToList() extension on your projection which is lst.SelectMany(item => item).ToList()
© www.soinside.com 2019 - 2024. All rights reserved.