我有一个非常愚蠢的问题。请原谅我迟到了,我累了。 :)
我有一个2d数组,其定义如下:
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)。
再次感谢!
答案 0 :(得分:5)
使用GetLength方法获取一维的长度。
myArray.GetLength(0)
请尝试以下几行:
Console.WriteLine(myArray.GetLength(0));
Console.WriteLine(myArray.GetLength(1));
你会得到
7
2
答案 1 :(得分:2)
不是 二维数组的数组 - 它是一个单独的2D数组。如前所述,维度由myArray.GetLength(dimension)
给出。它不是一个带有“7 int [,] arrays”的数组 - 它只是一个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},
};
然后7
为myArray.Length
。