1

我有一个非常愚蠢的问题。请原谅它已经晚了,我很累。:)

我有一个二维整数数组,定义如下:

int[,] myArray = new int[,] // array of 7 int[,] arrays
{
    { 1, 10 }, // 0
    { 2, 20 }, // 1
    { 3, 30 }, // 2
    { 4, 40 }, // 3
    { 5, 50 }, // 4
    { 6, 60 }, // 5
    { 7, 70 }, // 6                
};

如您所见,该数组由 7 个 int[,] 数组组成。

当我调用myArray.Length时,结果为 14。我需要的是 7。如何获得 int[,] 数组的数量?调用的方法是什么(我期望的结果是 7)。

再次感谢!

4

2 回答 2

5

使用GetLength方法获取一维的长度。

myArray.GetLength(0)

尝试以下几行:

 Console.WriteLine(myArray.GetLength(0)); 
 Console.WriteLine(myArray.GetLength(1)); 

你会得到

7
2
于 2012-08-30T06:22:26.827 回答
2

不是2D 数组的数组 - 它是一个 2D 数组。如前所述,尺寸由 给出myArray.GetLength(dimension)。它不是带有“7 个 int[,] 数组”的数组 - 它只是一个 7×2 数组。

如果你想要一个数组数组(实际上是一个向量的向量),它是:

int[][] myArray = {
    new int[] {1,10}, // alternative: new[]{1,10} - the "int" is optional
    new int[] {2,20},
    new int[] {3,30},
    new int[] {4,40},
    new int[] {5,50},
    new int[] {6,60},
    new int[] {7,70},
};

然后 7myArray.Length

于 2012-08-30T06:24:30.630 回答