在给定的代码示例中,为什么我们使用x.ToArray()? 每个元素x已经是一个数组了不是吗?
请让我少迷惑:)
var array1 = new int[3] { 1, 2, 3 }; //New integer array
var array2 = new int[3] { 4, 5, 6 }; //New integer array
var array3 = new int[3] { 7, 8, 9 }; //New integer array
IList<int[]> list4 = new List<int[]> { array1, array2, array3 };
var theManyList = list4.SelectMany(x => x.ToArray()).ToList();
答案 0 :(得分:6)
你不需要它。你可以这样做:
list4.SelectMany(x => x).ToList();
原因正如你所说,数组已经是数组。 SelectMany需要IEnumerable<T>
,因此无需添加额外操作。为什么有人在一个例子中这样做,不知道。也许他们试图说明你必须通过一个IEnumerable?