的方法是使用LINQ查询语句和ToList()方法。
首先,IEnumerable <IEnumerable <T >>是一个嵌套的集合,其中每个元素都是一个IEnumerable <T >类型的集合。要将其转换为List <List <T >>,我们需要遍历每个嵌套的集合,并将其转换为List <T >类型的集合。
以下是一个示例代码:
using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
IEnumerable<IEnumerable<int>> nestedCollection = new List<IEnumerable<int>>
{
new List<int> { 1, 2, 3 },
new List<int> { 4, 5, 6 },
new List<int> { 7, 8, 9 }
};
List<List<int>> convertedList = nestedCollection.Select(innerCollection => innerCollection.ToList()).ToList();
foreach (List<int> innerList in convertedList)
{
foreach (int value in innerList)
{
Console.Write(value + " ");
}
Console.WriteLine();
}
}
}
输出结果为:
1 2 3
4 5 6
7 8 9
在上述代码中,我们首先创建了一个IEnumerable <IEnumerable <int >>类型的嵌套集合nestedCollection。然后,我们使用LINQ的Select()方法遍历每个嵌套集合,并使用ToList()方法将其转换为List <int >类型的集合。最后,我们使用ToList()方法将整个结果转换为List <List <int >>类型的集合convertedList。
这样,我们就成功地将IEnumerable <IEnumerable <T >>转换为List <List <T >>类型的集合。
领取专属 10元无门槛券
手把手带您无忧上云