본문 바로가기
C#

C# 스위치 문 vs if 문: 상황별 비교

by 개발하는 늑대 2025. 5. 20.
728x90

C# 스위치 문 vs if 문: 상황별 비교

C#에서 스위치 문(switch statement)if 문(if statement)은 조건문으로, 각각의 장단점이 있습니다. 이 포스팅에서는 상황별로 어떤 조건문이 더 적합한지 알아보겠습니다. 😊

1. 스위치 문의 특징

스위치 문은 단일 변수나 표현식의 값을 여러 상수 값과 비교하여 일치하는 경우에만 특정 코드 블록을 실행합니다.

  • 장점: 가독성이 높고, 컴파일러 최적화로 성능이 약간 더 나을 수 있음.
  • 단점: 범위나 복잡한 조건 처리 불가.

public string GetDayName(int dayNumber)
{
    switch (dayNumber)
    {
        case 1:
            return "Sunday";
        case 2:
            return "Monday";
        default:
            return "Invalid day";
    }
}

위 예시는 요일 숫자를 받아 이름을 반환하는 코드로, 스위치 문이 간결하고 명확합니다.

728x90

2. if 문의 특징

if 文은 조건이 참인지 거짓인지에 따라 코드 블록을 실행하며, 복잡한 조건이나 범위에 적합합니다.

  • 장점: 범위, 복잡한 조건, 여러 변수 처리 가능.
  • 단점: 경우가 많아지면 코드가 길어지고 가독성이 떨어질 수 있음.

public string CheckAge(int age)
{
    if (age < 18)
        return "Minor";
    else if (age >= 18 && age < 65)
        return "Adult";
    else
        return "Senior";
}

나이 범위를 처리하는 위 예시는 if 문이 적합합니다.

3. 상황별 비교

상황 스위치 문 if 문
단일 변수의 여러 값 비교 적합 (예: 요일) 가능하지만 가독성 떨어짐
범위 비교 불가능 적합 (예: 나이 범위)
복잡한 조건 불가능 적합 (예: 여러 변수)
성능 약간 더 빠를 수 있음 차이 미미

4. 결론

스위치 문은 단일 변수의 여러 값을 비교할 때 적합하고, if 문은 범위나 복잡한 조건에 유리합니다. 코드의 요구사항과 가독성을 고려하여 선택하세요!

728x90