Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# ArrayList 컬렉션이란? 인덱스 기반 동적 배열 완벽 가이드

C#의 ArrayList 클래스는 각 요소를 개별적으로 인덱스로 접근할 수 있는 순서가 있는 객체 컬렉션을 나타냅니다. 크기가 고정된 일반 배열과 달리, ArrayList는 요소를 추가하거나 제거할 때 용량(capacity)이 자동으로 조절되는 동적 배열이므로 배열의 훌륭한 대안으로 사용됩니다.

ArrayList 클래스의 주요 속성

다음 표는 ArrayList 클래스에서 가장 많이 사용되는 핵심 속성들을 정리한 것입니다.

번호속성 및 설명
1Capacity
ArrayList에 담을 수 있는 요소의 총 개수를 가져오거나 설정합니다.
2Count
ArrayList에 실제로 포함되어 있는 요소의 개수를 가져옵니다.
3IsFixedSize
ArrayList의 크기가 고정되어 있는지 여부를 나타내는 값을 가져옵니다.
4IsReadOnly
ArrayList가 읽기 전용인지 여부를 나타내는 값을 가져옵니다.
5Item
지정한 인덱스 위치에 있는 요소를 가져오거나 설정합니다.

C# ArrayList 사용 예제

다음 예제는 C#에서 ArrayList 객체를 생성하고 요소를 추가한 뒤, 현재 용량(Capacity)을 확인하는 방법을 보여줍니다. ArrayList의 기본 용량은 4이며, 저장된 요소 수가 이 값을 초과하면 용량이 자동으로 늘어납니다.

using System;
using System.Collections;

namespace Demo {
    class Program {
        static void Main(string[] args) {
            ArrayList x = new ArrayList();

            x.Add(45);
            x.Add(53);
            x.Add(12);
            x.Add(88);

            Console.WriteLine("Capacity: {0} ", x.Capacity);
        }
    }
}

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Capacity: 4

ArrayList는 System.Collections 네임스페이스에 속해 있으며, 위 예제처럼 Add() 메서드를 사용해 서로 다른 타입의 객체도 자유롭게 추가할 수 있습니다. 다만 ArrayList는 값 타입을 저장할 때 박싱(boxing) 오버헤드가 발생할 수 있으므로, 타입 안정성과 성능이 중요한 상황이라면 제네릭 컬렉션인 List<T>를 사용하는 것이 좋습니다.