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

C# StringCollection에서 특정 문자열 존재 여부 확인하는 방법

C#에서 StringCollection에 지정된 문자열이 포함되어 있는지 확인하려면 Contains() 메서드를 사용합니다. 이 메서드는 해당 문자열이 컬렉션 내에 존재하면 true, 존재하지 않으면 false를 반환합니다.

예제 1: 숫자 문자열 배열로 확인하기

다음 예제는 문자열 배열을 StringCollection에 추가한 후, 특정 문자열("800")이 존재하는지 확인하는 코드입니다.

using System;
using System.Collections.Specialized;
public class Demo {
    public static void Main() {
        StringCollection stringCol = new StringCollection();
        String[] arr = new String[] { "100", "200", "300", "400", "500" };
        Console.WriteLine("배열 요소...");
        foreach (string res in arr) {
            Console.WriteLine(res);
        }
        stringCol.AddRange(arr);
        Console.WriteLine("지정된 문자열이 StringCollection에 있습니까? = " + stringCol.Contains("800"));
    }
}

출력 결과

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

배열 요소...
100
200
300
400
500
지정된 문자열이 StringCollection에 있습니까? = False

컬렉션에는 100부터 500까지의 값만 저장되어 있으므로, "800"은 존재하지 않아 False가 반환됩니다.

예제 2: 이름 문자열 배열로 확인하기

이번에는 여러 개의 이름으로 구성된 문자열 배열을 사용하여 특정 이름("Katie")의 존재 여부를 확인해 보겠습니다.

using System;
using System.Collections.Specialized;
public class Demo {
    public static void Main() {
        StringCollection stringCol = new StringCollection();
        String[] arr = new String[] { "John", "Tim", "Kevin", "Bradman", "Katie", "Tom", "Nathan" };
        Console.WriteLine("문자열 배열 요소...");
        foreach (string res in arr) {
            Console.WriteLine(res);
        }
        stringCol.AddRange(arr);
        Console.WriteLine("지정된 문자열이 StringCollection에 있습니까? = " + stringCol.Contains("Katie"));
    }
}

출력 결과

실행 결과는 다음과 같습니다.

문자열 배열 요소...
John
Tim
Kevin
Bradman
Katie
Tom
Nathan
지정된 문자열이 StringCollection에 있습니까? = True

"Katie"는 배열에 포함되어 있으므로 AddRange()로 추가된 후 Contains() 메서드가 True를 반환합니다.

정리

StringCollection.Contains(string) 메서드는 대소문자를 구분하여 문자열의 존재 여부를 검사합니다. 따라서 정확히 일치하는 문자열만 찾을 수 있으며, 필요에 따라 대소문자를 무시하고 비교하려면 별도의 처리(예: 모든 요소를 소문자로 변환 후 비교)가 필요합니다. 또한 AddRange() 메서드를 사용하면 문자열 배열 전체를 한 번에 컬렉션에 추가할 수 있어 편리합니다.