상세 컨텐츠

본문 제목

C# 여러 차원의 배열 길이 구하는 방법

프로그래밍/C#

by TickTack 2022. 8. 24. 11:36

본문

C#에는 일반적 배열 형태인 int[] 처럼 선언하는 Array 타입의 배열이 있습니다.

이번에는 C#에서 1차원부터 3차원까지의 배열 길이를 구하는 방법에 대하여 알아보겠습니다.

해당 글에서는 예시를 위하여 int로 선언하였지만 string, float 등등 배열에 사용된 자료형은 제한이 없습니다.

 

첫 번째로 1차원 배열에 대한 것 부터 확인해보겠습니다. 두 가지 방법 모두 결과는 동일합니다.

// 1차원 배열
int[] one = new int[1];
int x = one.Length;  // 1

다음 1차원 배열에 대한 두 번째 방법입니다.

// 1차원 배열
int[] one = new int[1];
int x = one.GetLength(0);  // 1

 

그 다음은 2차원 배열 이상인 다 차원 배열의 길이를 구하는 방법입니다.

// 2차원 배열
int[,] two = new int[1, 3];
int x = two.GetLength(0);  // 1
int y = two.GetLength(1);  // 3

// 3차원 배열
int[,,] three = new int[1, 3, 5];
int x = three.GetLength(0);  // 1
int y = three.GetLength(1);  // 3
int z = three.GetLength(2);  // 5

 

다 차원 배열에서는 Length 속성이 조금 다르게 사용됩니다.

// 2차원 배열
int[,] two = new int[2, 3];
int length = two.Length;  // 6

// 3차원 배열
int[,,] three = new int[2, 3, 5];
int length = three.Length;  // 30

 

다 차원 배열에서의 Length는 모든 차원의 공간 개수를 반환해줍니다.

예시의 코드처럼 (2 x 3), (2 x 3 x 5) 의 결과 값, 따라서 모든 차원을 서로 곱해준 값을 결과로 출력합니다.

 

그래서 다 차원 배열에서 한 행의 길이나 한 열의 길이 등을 구할 때는

Length 속성이 아닌 GetLength() 함수로 구해야 정확한 결과를 얻을 수 있습니다.

해당 내용은 4차원 이상의 배열에도 똑같이 적용됩니다.

 

이상으로 C#에서 배열의 길이를 구하는 방법에 대하여 알아보았습니다.

관련글 더보기

댓글 영역