我正在编写一个C#应用程序,并且我在解析列表列表中的对象。 现在,我有类似的东西,
List<List<MyObj>> list;
我只是想获取MyObj列表。并且,看起来外部列表是通用的。 我如何获得内部列表(列表)?
感谢您的帮助。
答案 0 :(得分:6)
如果您只想要内部List<MyObj>
中的特定内容,请使用索引器
List<MyObj> local = list[0];
如果您希望将所有内部列表视为单个List<MyObj>
并将内部列表组合在一起,则使用SelectMany
List<MyObj> local = list.SelectMany(x => x).ToList();
答案 1 :(得分:1)
列出内部=外部列表[indexOfListYouWant]
可以像访问该列表中的任何其他对象一样访问列表中的列表。
答案 2 :(得分:1)
您只需要迭代外部列表,如下所示:
foreach(List<MyObj> innerList in list)
{
// do stuff to innerList
}
答案 3 :(得分:0)
你想要哪个“内部列表”?
List<List<MyObj>> list;
List<MyObj> MyObjList = list[0];
答案 4 :(得分:0)
要访问许多内部列表中的一个(此处,第一个):
List<MyObj> inner = list[0];
将这个“锯齿状”的二维列表转换为单个一维列表:
List<MyObj> oneList = list.Aggregate(new List<MyObj>(), (inner, result) => result.Concat(inner)).ToList();