본문 바로가기
Development/멋쟁이사자처럼 게임개발 부트캠프

[멋쟁이사자처럼 Unity 게임 부트캠프 4기] 4일차 (1) - switch 문

by jjeondeuk1008 2025. 3. 5.

 

[ 목차 ]


     

    오늘은 switch 문을 알아볼 것이다.

     

    switch..

    제가 아는 건 게임기 스위치 밖에 모르는데요..

     

     

    하지만!

    if와 거의 다를 게 없다고 하니 if를 알면 잘 알 수 있다는 것..!

     

     

    이번에는 그렇게 어렵지 않으니 헷갈리지만 말자!!

     

     

     

     

     


     

     

     

    1. switch 문

    switch 문은 if 문과 같은 조건문이다.

     

     

    그렇다면? if 문과 차이는 뭔가요?

    솔직히 가독성의 차이이고, 그렇게 다를 게 없다. 거의 비슷하다고 본다.

     

     

     

    가독성의 차이이기 때문에 유동적으로 써주는 것도 좋을 것 같다.

     

     

    간단한 날짜에 대해서 요일을 알려주는 코드를 작성해 보았다.

    if 문과 switch 문은 비슷하다곤 했지만 다른 부분이 있다.

     

    if (조건식)인 반면,

    switch (변수명)으로 시작한다.

     

    여기에서 if와 else if를 담당하는 것은 case이다.

     

    case (변수의 값): Console.WriteLine(""); break;

     

    변수가 어떤 값일 때 실행하는데, 여기에서 break 가 없으면 해당 조건에 충족해 출력을 해도 멈추지 않는다.

     

    그리고 default:if 조건문의 else와 동일하다.

    모든 조건에 해당하지 않을 때 default를 출력한다.

    //swtich문
    //swtich와 if 차이 : 가독성의 차이. 
    int day = 3;
    switch (day)
    {
        case 1:
            Console.WriteLine("월요일");
            break; //break가 있어야 멈춤, 없으면 멈추지 않고 쭉 보여짐
        case 2:
            Console.WriteLine("화요일");
            break;
        case 3:
            Console.WriteLine("수요일");
            break;
        case 4:
            Console.WriteLine("목요일");
            break;
        case 5:
            Console.WriteLine("금요일");
            break;
        default: //나머지
            Console.WriteLine("주말입니다.");
            break;
    

     

     

     


     

    2. 실습

     

    이런 switch 문을 응용해 캐릭터를 선택하는 실습을 하였다.

     

     

    사용자로부터 캐릭터를 선택해 선택한 캐릭터, 공격력, 방어를 보여주는 코드이다.

     

    항상 그래왔듯 사용자로부터 입력받는 메서드를 작성한 후에 변수를 지정해

    입력받은 변수의 값에 따라 조건문을 만드는 것이다.

    //캐릭터를 선택하세요 (1. 검사 2. 마법사 3. 도적)
    Console.WriteLine("캐릭터를 선택하세요");
    Console.WriteLine("1. 검사  2. 마법사  3. 도적");
    int Chose = int.Parse(Console.ReadLine());
    
    switch (Chose)
    {
        case 1:
            Console.WriteLine("검사");
            Console.WriteLine("공격력 100");
            Console.WriteLine("방어력 90");
            break;
        case 2:
            Console.WriteLine("마법사");
            Console.WriteLine("공격력 110");
            Console.WriteLine("방어력 80");
            break;
        case 3:
            Console.WriteLine("도적");
            Console.WriteLine("공격력 115");
            Console.WriteLine("방어력 70");
            break;
        default: //나머지
            Console.WriteLine("잘못된 입력입니다.");
            break;
    }
    

     

     

     

     

     


     

     

    이번 것은 if 문을 잘 이해하고 있다면 어렵지 않다!

     

     

    조건! 이라는 것을 잘 기억해 두고

    이 코드는 switch로만 해야 해! if로만 해야해!

    는 절대 아니고

     

     

    본인이 편한 방식대로 하면 되는 것이다.

    가독성이 좋아도 불편하면 if 조건문을 쓰는 것이고..

     

     

    엇 그렇다면

    if문이 좋아서 if문만 알면 되지 않나!?

    라고 생각할 수 있겠지만..

     

     

    알아서 나쁠 건 없으니

    그리고 유동적으로 써주기 위해 알아야 한다!

     

     

    앞으로도 많은 곳에 활용될 것이니.. 꼭 기억해두길 바란다..!

     

    아자아자 파이팅!

     

     


    목차