C#에서 다차원 배열을 다룰 때 각 차원의 크기를 알아야 하는 경우가 자주 있습니다. 예를 들어 다음과 같은 3차원 배열이 있다고 가정해 보겠습니다.
int[,] arr = new int[3,4,5];
이 배열은 첫 번째 차원에 3개, 두 번째 차원에 4개, 세 번째 차원에 5개의 요소를 가집니다.
GetLength() 메서드로 차원별 크기 구하기
배열의 높이와 너비, 즉 행(row)과 열(column)의 개수를 구하려면 Array.GetLength() 메서드를 사용합니다. 이 메서드는 인덱스로 지정한 차원의 요소 개수를 반환합니다.
Array.GetLength(0) – 첫 번째 차원(행)의 크기
Array.GetLength(1) – 두 번째 차원(열)의 크기
Array.GetLength(2) – 세 번째 차원(깊이)의 크기
예제
using System;
class Program {
static void Main() {
int[,] arr = new int[3,4,5];
Console.WriteLine(arr.GetLength(0));
Console.WriteLine(arr.GetLength(1));
Console.WriteLine(arr.GetLength(2));
}
}
출력 결과
3
4
5
실행 결과를 보면 GetLength(0), GetLength(1), GetLength(2)가 각각 3, 4, 5를 반환하는데, 이는 배열 선언 시 지정한 각 차원의 크기와 정확히 일치합니다. 참고로 배열에 포함된 전체 요소의 총 개수가 필요하다면 arr.Length 속성을 사용하면 되며, 위 예제의 경우 3 × 4 × 5 = 60이 반환됩니다.