C#에서 Array.Length 속성은 배열에 포함된 전체 요소의 개수, 즉 배열의 길이를 확인할 때 사용하는 속성입니다. 배열을 다루는 거의 모든 코드에서 반복문 범위 지정, 유효성 검사 등 다양한 용도로 활용되는 필수적인 속성입니다.
Array.Length 속성의 기본 개념
Array 클래스의 Length 속성은 32비트 정수(int) 타입으로 배열의 총 요소 수를 반환합니다. 1차원 배열뿐만 아니라 다차원 배열에서도 전체 요소 개수를 반환한다는 점이 특징입니다.
먼저 Array 클래스를 사용해 배열을 생성해 보겠습니다.
Array arr = Array.CreateInstance(typeof(String), 3);
arr.SetValue("Electronics", 0);
arr.SetValue("Clothing", 1);
arr.SetValue("Appliances", 2);위 코드는 문자열(String) 타입으로 크기가 3인 배열을 생성하고, 각 인덱스에 값을 저장하는 예제입니다.
배열의 길이가 3이므로 Length 속성은 다음과 같이 결과값 3을 반환합니다.
arr.Length
전체 예제 코드
다음은 Array 클래스의 Length 속성을 실제로 구현한 전체 코드입니다.
예제
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace lower {
class Program {
static void Main(string[] args) {
Array arr = Array.CreateInstance(typeof(String), 3);
arr.SetValue("Electronics", 0);
arr.SetValue("Clothing", 1);
arr.SetValue("Appliances", 2);
Console.WriteLine("Length: {0}", arr.Length.ToString());
Console.ReadLine();
}
}
}실행 결과
Length: 3
추가로 알아두면 좋은 점
- LongLength 속성: 배열 크기가 int의 최대값(2,147,483,647)을 초과할 가능성이 있다면 64비트 정수로 길이를 반환하는 LongLength 속성을 사용하는 것이 안전합니다.
- 다차원 배열: Length는 모든 차원의 요소 수를 합산하여 반환하며, 각 차원별 길이가 필요하면 GetLength(dimension) 메서드를 사용하면 됩니다.
- 빈 배열: 요소가 하나도 없는 배열의 Length 값은 0이며, null과는 다르다는 점에 유의해야 합니다.
이처럼 Array.Length 속성은 C#에서 배열의 크기를 파악하는 가장 기본적이면서도 중요한 도구입니다. 반복문 처리나 배열 경계 검사 시 적극적으로 활용해 보시기 바랍니다.