C# ArrayList에서 항목 제거하기
C#의 ArrayList는 크기가 동적으로 조절되는 컬렉션으로, 다양한 타입의 요소를 자유롭게 추가하거나 삭제할 수 있습니다. 이 글에서는 ArrayList에 저장된 특정 항목을 제거하는 방법을 예제와 함께 살펴보겠습니다.
1. ArrayList 생성 및 요소 추가
먼저 새로운 ArrayList 객체를 생성하고 몇 가지 요소를 추가합니다.
ArrayList arr = new ArrayList();
arr.Add("Jones");
arr.Add("Tom");
arr.Add("Henry");
2. Remove() 메서드로 항목 제거
ArrayList에서 특정 값을 가진 항목을 제거하려면 Remove() 메서드를 사용합니다. 예를 들어 "Tom"이라는 항목을 제거하려면 다음과 같이 작성합니다.
arr.Remove("Tom");
Remove() 메서드는 지정한 개체와 일치하는 첫 번째 요소를 찾아 제거합니다. 만약 해당 항목이 ArrayList에 존재하지 않으면 오류 없이 그대로 통과되며, 리스트에는 어떠한 변화도 일어나지 않습니다.
전체 예제 코드
다음은 ArrayList에서 요소를 제거하는 과정을 보여주는 완전한 C# 프로그램입니다.
using System;
using System.Collections;
class Demo {
static void Main(){
ArrayList arr = new ArrayList();
arr.Add("Jones");
arr.Add("Tom");
arr.Add("Henry");
Console.WriteLine("초기 ArrayList...");
foreach(string str in arr) {
Console.WriteLine(str);
}
arr.Remove("Tom");
Console.WriteLine("요소 제거 후 ArrayList...");
foreach(string str in arr) {
Console.WriteLine(str);
}
Console.ReadLine();
}
}
실행 결과
초기 ArrayList... Jones Tom Henry 요소 제거 후 ArrayList... Jones Henry
실행 결과에서 볼 수 있듯이 Remove("Tom") 호출 이후 "Tom" 항목이 사라지고 나머지 요소들만 남게 됩니다.
추가 팁: 인덱스로 항목 제거하기 – RemoveAt()
값이 아닌 위치(인덱스)를 기준으로 항목을 제거하고 싶다면 RemoveAt() 메서드를 사용할 수 있습니다.
arr.RemoveAt(1); // 인덱스 1(두 번째 항목) 제거
인덱스는 0부터 시작한다는 점에 유의해야 하며, 리스트 범위를 벗어난 인덱스를 지정하면 ArgumentOutOfRangeException 예외가 발생합니다.