C#

HashSet<T>

메타 스토리 2023. 9. 5. 10:04

HashSet<T>는 C#에서 제공하는 컬렉션 중 하나로, 고유한 값을 저장하는데 사용됩니다. 이것은 중복된 요소를 허용하지 않으며 빠른 검색과 멤버십 테스트를 제공합니다. HashSet<T>System.Collections.Generic 네임스페이스에 정의되어 있으며, 제네릭으로 요소의 유형을 지정할 수 있습니다.

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // HashSet 생성
        HashSet<string> fruits = new HashSet<string>();

        // 요소 추가
        fruits.Add("사과");
        fruits.Add("바나나");
        fruits.Add("체리");

        // 중복 요소는 허용되지 않음
        fruits.Add("사과");

        // 요소 순회
        Console.WriteLine("HashSet의 요소:");
        foreach (string fruit in fruits)
        {
            Console.WriteLine(fruit);
        }

        // 멤버십 테스트
        bool containsBanana = fruits.Contains("바나나");
        Console.WriteLine("HashSet에 '바나나'가 포함되어 있음: " + containsBanana);

        // 요소 제거
        bool removedCherry = fruits.Remove("체리");
        Console.WriteLine("체리 제거 결과: " + removedCherry);
    }
}

HashSet의 요소:
바나나
사과
체리
HashSet에 '바나나'가 포함되어 있음: True
체리 제거 결과: True

 

위의 예제에서 볼 수 있듯이 HashSet<T>는 중복된 요소를 허용하지 않으며 순서를 보장하지 않습니다. 또한 Contains 메서드를 사용하여 요소의 멤버십을 확인하거나 Remove 메서드를 사용하여 요소를 제거할 수 있습니다. 이 컬렉션은 중복을 제거하고 고유한 값의 집합을 관리해야 할 때 유용합니다.