Edit

Share via


Array.Rank Property

Definition

Gets the rank (number of dimensions) of the Array. For example, a one-dimensional array returns 1, a two-dimensional array returns 2, and so on.

public:
 property int Rank { int get(); };
public int Rank { get; }
member this.Rank : int
Public ReadOnly Property Rank As Integer

Property Value

The rank (number of dimensions) of the Array.

Examples

The following example initializes a one-dimensional array, a two-dimensional array, and a jagged array, and retrieves the Rank property of each.

using System;

public class Example
{
   public static void Main()
   {
      int[] array1 = new int[10];
      int[,] array2= new int[10,3];
      int[][] array3 = new int[10][];

      Console.WriteLine("{0}: {1} dimension(s)",
                        array1.ToString(), array1.Rank);
      Console.WriteLine("{0}: {1} dimension(s)",
                        array2.ToString(), array2.Rank);
      Console.WriteLine("{0}: {1} dimension(s)",
                        array3.ToString(), array3.Rank);
   }
}
// The example displays the following output:
//       System.Int32[]: 1 dimension(s)
//       System.Int32[,]: 2 dimension(s)
//       System.Int32[][]: 1 dimension(s)
let array1 = Array.zeroCreate<int> 10
let array2 = Array2D.zeroCreate<int> 10 3
let array3 = Array.zeroCreate<int[]> 10

printfn $"{array1}: {array1.Rank} dimension(s)"

printfn $"{array2}: {array2.Rank} dimension(s)"

printfn $"{array3}: {array3.Rank} dimension(s)"

// The example displays the following output:
//       System.Int32[]: 1 dimension(s)
//       System.Int32[,]: 2 dimension(s)
//       System.Int32[][]: 1 dimension(s)
Module Example
   Public Sub Main()
      Dim array1(9) As Integer
      Dim array2(9,2) As Integer
      Dim array3(9)() As Integer

      Console.WriteLine("{0}: {1} dimension(s)",
                        array1.ToString(), array1.Rank)
      Console.WriteLine("{0}: {1} dimension(s)",
                        array2.ToString(), array2.Rank)
      Console.WriteLine("{0}: {1} dimension(s)",
                        array3.ToString(), array3.Rank)
   End Sub
End Module
' The example displays the following output:
'       System.Int32[]: 1 dimension(s)
'       System.Int32[,]: 2 dimension(s)
'       System.Int32[][]: 1 dimension(s)

Remarks

For example, the following code creates an array of three dimensions with a Rank property whose value is 3.

Dim TDArray(0,0,0) As Integer
int[,,] TDArray = new int[1,1,1];

A jagged array (an array of arrays) is a one-dimensional array; the value of its Rank property is 1.

Retrieving the value of this property is an O(1) operation.

Applies to

See also