[C#] switch문

Learning 

When: 1학년 5월 3일

 

How:

백준 문제를 풀다가 평소에는 잘 쓰지 않던 switch문에 대한 문제가 나왔는데, 사용법을 까먹어서 구글링을 해야했습니다. 이참에 switch문에 대해 조금 더 알아가기 위해 공부를 해 보았습니다.

 

Understanding:

일단 스위치 문을 사용하는 형태는

switch (변수)
{

    case 변수의 타입인 값:
    	실행할 코드;
        break;
    default:
    	실행할 코드;
        break;
}

이런 식인데, 일단 변수는 여러 값들과 비교할 주인공 같은 존재이고, case마다 변수와 case 뒤에 있는 값을 == 연산자로 비교한다고 생각하시면 되는데, 이때 case 뒤의 실행할 코드는 비워두셔도 됩니다. 비교할 값에 아무것도 안 넣는다는 것은 건너뛰라는 것이고 가독성을 위해 사용되는데, 이것을 fall-through 방식이라고 하고 break; 문을 넣지 않으셔도 됩니다. 그 외의 case에는 break를 꼭 넣어주셔야 그 case까지만 실행되고 나가기 때문에 필수(강제)로 사용됩니다. if문에 else절이 있듯, case 말고도 default를 사용하실 수 있는데, if문에 else와 완전히 같은 역할(아무 조건도 맞지 않으면 실행)을 하고 안전성이나 디버깅을 쉽게 하기 위해 자주 사용해주시는 것이 좋습니다. default문에도 break문은 넣어주셔야 합니다. 조건이 범위가 없고 값 하나로 정해지며, if문보다 사용하기 조금 귀찮고 줄이 길어지므로 4개 이상의 값이 하나인 조건이 필요할 때 사용하시면 좋습니다.

 

 

Result: 조건에 사용할 비교값의 값이 범위가 아니라 값 하나이고, 그 값의 갯수가 많으면 case를 사용하시는 것이 좋습니다. default를 포함한 모든 case에는 break를 사용하여 빠져나가시는 것이 필수입니다.

'C#' 카테고리의 다른 글

[C#] 프로퍼티  (0) 2025.05.13
[C#] 다형성  (0) 2025.05.12
[C#] 빠른 입력과 출력  (0) 2025.05.04
[C#] 동기와 비동기  (0) 2025.04.30
[C#] 오브젝트 풀링과 스택  (0) 2025.04.29