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

C#에서 StringCollection 생성하고 활용하는 방법 – 예제 코드로 쉽게 배우기

StringCollectionSystem.Collections.Specialized 네임스페이스에 포함된 클래스로, 문자열들을 저장하고 관리하기 위한 특수화된 컬렉션입니다. 이 글에서는 C#에서 StringCollection을 생성하고 활용하는 방법을 실제 코드 예제를 통해 단계별로 살펴봅니다.

예제 1: StringCollection 생성 및 배열 추가하기

아래 코드에서는 먼저 StringCollection 객체를 생성한 뒤, AddRange() 메서드를 사용하여 문자열 배열의 모든 요소를 한 번에 추가합니다.

using System;
using System.Collections.Specialized;

public class Demo {
   public static void Main() {
      // StringCollection 인스턴스 생성
      StringCollection strCol = new StringCollection();

      // 문자열 배열 선언
      String[] strArr = new String[] { "A", "B", "C", "D", "E", "F", "G", "H" };

      Console.WriteLine("StringCollection 요소...");
      foreach (string str in strArr) {
         Console.WriteLine(str);
      }

      // 배열의 모든 요소를 StringCollection에 추가
      strCol.AddRange(strArr);

      Console.WriteLine("5번째 인덱스의 요소 = " + strCol[5]);
      Console.WriteLine("StringCollection의 문자열 개수 = " + strCol.Count);
   }
}

실행 결과

StringCollection 요소...
A
B
C
D
E
F
G
H
5번째 인덱스의 요소 = F
StringCollection의 문자열 개수 = 8

위 실행 결과에서 확인할 수 있듯이, 인덱서(strCol[5])를 통해 특정 위치의 요소에 바로 접근할 수 있으며, Count 속성으로 컬렉션에 저장된 문자열의 총 개수도 손쉽게 얻을 수 있습니다.

예제 2: Remove()로 요소 삭제하기

다음 예제에서는 Remove() 메서드를 사용하여 컬렉션에서 특정 문자열을 삭제하는 방법을 보여줍니다. 참고로 Remove()는 조건과 일치하는 첫 번째 요소만 제거한다는 점에 유의하세요.

using System;
using System.Collections.Specialized;

public class Demo {
   public static void Main() {
      StringCollection stringCol = new StringCollection();

      String[] arr = new String[] { "100", "200", "100", "400", "500" };

      Console.WriteLine("배열 요소...");
      foreach (string res in arr) {
         Console.WriteLine(res);
      }

      // 배열의 모든 요소 추가
      stringCol.AddRange(arr);
      Console.WriteLine("전체 요소 수 = " + stringCol.Count);

      // "100" 요소 삭제 (첫 번째 항목만 제거됨)
      stringCol.Remove("100");
      Console.WriteLine("삭제 후 전체 요소 수 = " + stringCol.Count);
   }
}

실행 결과

배열 요소...
100
200
100
400
500
전체 요소 수 = 5
삭제 후 전체 요소 수 = 4

배열에는 "100"이 두 개 있었지만, Remove() 호출 후 개수가 5개에서 4개로 줄어든 것을 볼 수 있습니다. 즉, 중복 값이 있더라도 첫 번째 항목 하나만 삭제되는 것입니다.

핵심 정리

StringCollection은 문자열 전용 컬렉션이므로 별도의 형 변환 없이 간편하게 사용할 수 있다는 장점이 있습니다. 주요 기능을 정리하면 다음과 같습니다.

  • AddRange(): 문자열 배열의 모든 요소를 컬렉션 끝에 한 번에 추가합니다.
  • 인덱서([i]): 지정한 인덱스의 요소에 접근하거나 값을 수정할 수 있습니다.
  • Count: 컬렉션에 포함된 요소의 총 개수를 반환합니다.
  • Remove(): 지정한 문자열과 일치하는 첫 번째 요소를 삭제합니다.