maf*_*afu 3 c# linq ienumerable
对不起,奇怪的标题.我想要实现的目标很简单:
IEnumerable<IEnumerable<Foo>> listoflist;
IEnumerable<Foo> combined = listoflist.CombineStuff();
Run Code Online (Sandbox Code Playgroud)
例:
{{0, 1}, {2, 3}} => {0, 1, 2, 3}
Run Code Online (Sandbox Code Playgroud)
我很肯定有一个Linq表达式...
旁注:列表可能很大.
Jon*_*eet 14
正如leppie所说,你想要的Enumerable.SelectMany.最简单的形式是:
combined = listOfList.SelectMany(x => x);
Run Code Online (Sandbox Code Playgroud)
在查询表达式中,SelectMany当您有多个from子句时调用,因此替代方法是:
combined = from x in listOfList
from y in x
select y;
Run Code Online (Sandbox Code Playgroud)