c# 기본문법
c# switch case
yoon-record
2023. 7. 5. 00:16
switch case 문의 다양한 사용법에 대해 자세히 알아보겠습니다.
switch case 문은 변수가 가질 수 있는 값들을 비교하여 실행할 코드를 선택하는 구문입니다.
switch 문은 다음과 같이 작성할 수 있습니다.
switch (변수명)
{
case 값1:
// 코드
break;
case 값2:
// 코드
break;
default:
// 코드
break;
}
위의 코드에서 변수명은 switch 문에 전달할 변수의 이름입니다.
값1, 값2 등은 변수명이 가질 수 있는 값들입니다.
default는 변수명이 가질 수 있는 값들 중에서 어떤 것과도 일치하지 않을 때 실행됩니다.
각 case 문마다 실행할 코드를 작성하고 마지막에 break 문을 써서 switch 문을 빠져나옵니다.
만약 break 문을 쓰지 않으면 다음 case 문으로 넘어가게 됩니다.
다음은 switch case 문의 다양한 사용입니다.
switch (변수명)
{
case 값1:
// 코드
break;
case 값2:
// 코드
goto case 값1;
case 값3 when 조건식:
// 코드
break;
case 값4 when 조건식:
case 값5 when 조건식:
// 코드
break;
default:
// 코드
break;
}
goto 키워드를 사용하여 다른 case 문으로 이동할 수 있습니다.
when 키워드를 사용하여 조건식을 추가할 수 있습니다.
여러 개의 값을 한 번에 처리할 수 있습니다.
참고로 goto 키워드는 프로그램의 흐름을 복잡하게 만들기 때문에 사용을 지양하는 것이 좋습니다.
예제
using System;
namespace test
{
class Program
{
static void Main(string[] args)
{
for (int i = 0; i <14; i++)
{
string output = MonthToSeason(i);
Console.WriteLine(i.ToString() + "월은 " + output + " 입니다");
}
}
static public string MonthToSeason(int month)
{
string season;
switch (month)
{
case 12:
case 1:
case 2:
//코드
season = "겨울";
break;
case 3:
case 4:
case 5:
// 코드
season = "봄";
break;
case 6:
case 7:
case 8:
// 코드
season = "여름";
break;
case 9:
case 10:
case 11:
// 코드
season = "가을";
break;
default:
// 코드
season = "Error";
break;
}
return season;
}
}
}
결과
0월은 Error 입니다
1월은 겨울 입니다
2월은 겨울 입니다
3월은 봄 입니다
4월은 봄 입니다
5월은 봄 입니다
6월은 여름 입니다
7월은 여름 입니다
8월은 여름 입니다
9월은 가을 입니다
10월은 가을 입니다
11월은 가을 입니다
12월은 겨울 입니다
13월은 Error 입니다