C# 연습

C#에서 패턴 매칭으로 데이터 분류하기

이 레슨에서는 타입 패턴, 비교 패턴, 속성 패턴으로 여러 타입의 값을 분류합니다.

소개

패턴 매칭을 쓰면 하나의 식 안에서 타입 확인, 값 검사, 데이터 추출을 함께 할 수 있습니다. 이 연습에서는 어떤 값이든 받아서 알맞은 설명을 돌려주는 분류 함수를 만듭니다.

int and >= 18 패턴은 18 이상인 정수에 해당합니다. string { Length: 0 } 패턴은 값이 문자열임을 확인한 뒤 빈 문자열에 해당합니다. string text 패턴은 그 밖의 모든 문자열에 해당하며 값을 변수 text에 담습니다. "CSharp"는 6자이므로 결과는 text(6)입니다.

실행 가능한 C# 예제

C#
코드 실행 →
Program.cs
using System;
class Program
{
    static string Classify(object? value) => value switch
    {
        int and >= 18 => "adult age", string { Length: 0 } => "empty text",
        string text => $"text({text.Length})", null => "null", _ => "other"
    };
    static void Main() => Console.WriteLine(Classify("CSharp"));
}
실행 결과
text(6)

디버거로 연습하기

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

챌린지로 연습하기

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

모든 챌린지