2

我使用数组数组:

object[][] of =new object[lenght2][];

现在,我想要的是在 [][] 中插入一个新数组,我试试这个:

 for (int i = 0; i < lenght2; i++)
  {
      Act = calcul_resporderbyact(responsable,v); // return array of object
      of[i] = Act;
 }

我想知道如何使用这个多维数组中的一些数组??

4

3 回答 3

5

您的代码中有几个错误object[,] of =new object[lenght2][];

[,]不等于[][]

你可以试试这个:

object[][] of = new object[length2][];
of[i] = Act; //it means you can assign `new[] { new object() };`

阅读本文:多维数组 [][] vs [,]

它说这[,]是多维数组并且[][]是数组数组。因此,对于您使用的数组数组是有效的。

于 2013-09-18T06:55:36.840 回答
1

在 C# 中有交错数组多维数组。在您的示例中,您似乎将两者混为一谈。

锯齿状数组以这种方式创建,您必须单独构造每个“子数组”:

object[][] obj = new object[10][];
obj[0] = new object[10];
obj[1] = new object[10];
...

另一方面,多维数组:

object[,] obj = new object[10,10];
于 2013-09-18T06:56:43.320 回答
1

多维数组(与锯齿状数组相反)总是“矩形”的,这意味着数组中每个条目的长度也是固定的。

如果您只想要一个可以具有不同长度的数组列表,请使用List<object[]>as

List<object[]> l = new List<object[]>();
l.Add(calcul_resporderbyact(responsable,v));

或者您可以使用锯齿状数组

object[][] l = new object[length2][];
l[i] = calcul_resporderbyact(responsable,v);
于 2013-09-18T06:57:18.640 回答