What is the difference between Array.GetLength() and Array.Length?

GetLength takes an integer that specifies the dimension of the array that you're querying and returns its length. Length property returns the total number of items in an array:

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

For 1-dimensional arrays Length and GetLength(0) are exactly the same.

For arrays of higher rank Length is the product of all GetLength(0..Rank-1) values, in other words it is always the total number of fields.

Tags:

C#

Arrays