如何在C#中获取多维列表中对象的值?

如何在C#中获取多维列表中对象的值?,c#,list,C#,List,我在程序中创建了一个多维对象列表,因为我想在运行时在其中存储不同的数据。如何检索多维列表中指定索引的值 多维列表如下所示: List<List<List<object>>> list = new List<List<List<object>>>(); List List=新列表(); 要检索列表中任何索引的值,需要在括号中插入每个维度的索引 在这种情况下,您需要执行以下操作: object valueInList = li

我在程序中创建了一个多维对象列表,因为我想在运行时在其中存储不同的数据。如何检索多维列表中指定索引的值

多维列表如下所示:

List<List<List<object>>> list = new List<List<List<object>>>();
List List=新列表();

要检索列表中任何索引的值,需要在括号中插入每个维度的索引

在这种情况下,您需要执行以下操作:

object valueInList = list[0][0][0];
对于每个维度,您需要输入另一个括号,即对于五维列表,它如下所示:

List<List<List<List<List<object>>>>> list = new List<List<List<List<List<object>>>>>();
object valueIn5DList = list[0][0][0][0][0];
List List=新列表();
对象值In5dList=列表[0][0][0][0];
使用相同的方法,还可以将值分配给列表中的指定索引

List<List<List<List<int>>>> list = new List<List<List<List<int>>>>();
list[0][0][0][0] = 36;
List List=新列表();
列表[0][0][0][0]=36;
当然,您可以用所需的索引替换括号中的零

请记住,第一个索引用于父列表,第二个索引用于父列表中的列表,等等


另外,在这种情况下,您始终可以为每种数据类型创建一个自定义类,以使代码总体上更具可读性。

从长远来看,这可以为您创建一个
列表。可能有比三维列表更好的存储替代方案。