如何在C#中使用Array.GetLength
函数?
Length
属性和GetLength
函数有何区别?
GetLength
接受一个整数参数,该参数指定您要查询的数组维度,并返回其长度。Length
属性返回数组中所有项的总数:
int[,,] a = new int[10,11,12];
Console.WriteLine(a.Length); // 1320
Console.WriteLine(a.GetLength(0)); // 10
Console.WriteLine(a.GetLength(1)); // 11
Console.WriteLine(a.GetLength(2)); // 12
对于一维数组,Length
和 GetLength(0)
的值完全相同。
对于高维数组,Length
是所有 GetLength(0..Rank-1)
值的乘积,换句话说,它总是字段数量的总和。
testArray.Length
,而应该是 testArray.GetLength(0)
。 - Anon..Length
属性返回数组中元素的数量,无论是一维还是多维数组。例如一个2x6的数组其长度为12。
.GetLength(0)
方法返回多维数组中行方向上元素的数量。对于一个2x6的数组来说,它的值为2。
.GetLength(1)
方法返回多维数组中列方向上元素的数量。对于一个2x6的数组来说,它的值为6。
正如上面所选择的答案所述,它们并不返回实际的元素值。
GetLength返回多维数组中指定维度的长度。
Length返回所有维度中元素总数的和。
等等。
GetLength(0) = m
表示行数,GetLength(1)= n
表示列数。例如,请参见下面的示例。string[,] stocks ={{"RELIND","Reliance Industries","1006.30"},{"TATMOB","Tata Mobiles","504.10"},{"ALST","Allstate","800.00"}, {"GE","GE Motors","810.00"}
};
股票数组返回 GetLength(0)= 4
和 GetLength(1)=3
和 length =12
Length
会返回与GetLength(0)
相同的值。 - Dirk Vollmar