C# 연습

C#의 HashSet으로 중복 없는 태그 걸러 내기

이 레슨에서는 HashSet으로 대소문자 차이를 무시하고 서로 다른 태그만 남깁니다.

소개

HashSet<T>는 각 값을 한 번만 저장하는 컬렉션으로, 글의 태그 목록처럼 고유한 값이 필요할 때 알맞습니다. HashSet은 어떤 값이 이미 들어 있는지도 아주 빠르게 확인합니다.

HashSet을 StringComparer.OrdinalIgnoreCase 비교자로 만들었기 때문에 "C#"과 "c#"은 같은 태그로 취급됩니다. 값 세 개로 초기화하면 중복된 태그는 무시되고 집합에는 요소가 2개만 남습니다. 이 비교자가 없으면 두 표기는 서로 다른 태그가 됩니다.

동작 원리 보기

연산을 고르면 결과가 그림에서 강조됩니다. 이미 있는 값을 추가하면 중복이 무시된다는 것을 볼 수 있습니다.

실행 가능한 C# 예제

C#
코드 실행 →
Program.cs
using System;
using System.Collections.Generic;
class Program
{
    static void Main()
    {
        var tags = new HashSet<string>(StringComparer.OrdinalIgnoreCase) { "C#", "dotnet", "c#" };
        Console.WriteLine(tags.Count);
    }
}
실행 결과
2

디버거로 연습하기

중요한 대입이나 조건에 중단점을 두고 Debug를 눌러 다음 줄로 넘어가기 전에 지역 변수 값을 확인하세요.

챌린지로 연습하기

이 레슨에서 배운 내용으로 실제 문제를 풀어 보세요. 모든 챌린지는 브라우저에서 실행되며 즉시 테스트와 AI 리뷰를 받을 수 있습니다.

모든 챌린지