표현식이 있는 Switch
Coddy GO 여정의 기초 섹션에 포함된 레슨. 109개 중 40번째.
각 case에서 조건을 직접 평가할 수 있도록 해 주는 Go의 switch 문에서의 표현식 사용법을 배워 봅시다.
먼저 각 case에 조건을 넣은 switch 문을 사용해 숫자가 양수인지, 음수인지, 0인지 확인하는 방법을 살펴보겠습니다.
num := -5
switch {
case num > 0:
fmt.Println("Positive number")
case num < 0:
fmt.Println("Negative number")
default:
fmt.Println("Zero")
}이 코드를 실행하면 프로그램이 화면에 다음을 표시합니다.
Negative number값을 지정하지 않고 switch {를 사용하고 있다는 점에 주목하세요. 이는 Go가 각 case 표현식을 불리언 조건으로 평가한다는 뜻입니다. num은 -5이므로 두 번째 case인 num < 0은 true로 평가되고, 따라서 "Negative number"가 출력됩니다.
switch 문 안에서 바로 변수를 초기화할 수도 있습니다. 어떻게 작동하는지 살펴보겠습니다.
switch num := -5; {
case num > 0:
fmt.Println("Positive number")
case num < 0:
fmt.Println("Negative number")
default:
fmt.Println("Zero")
}이 코드를 실행하면 같은 결과가 나옵니다.
Negative number이 예시에서는 switch 문에서 num을 직접 선언하고 초기화했습니다. 세미콜론은 초기화와 switch 표현식(여기서는 비어 있음)을 구분합니다. 이렇게 하면 기능은 그대로 유지하면서 코드를 더 간결하게 만들 수 있습니다.
챌린지
초급switch 표현식을 사용하는 연습을 합니다. switch 문을 사용해 요일 이름에 따라 설명을 정하도록 코드를 완성해야 합니다.변수
dayName은 이미 "Wednesday" 값으로 정의되어 있습니다. switch 표현식을 사용해 description 변수를 다음과 같이 설정하세요.- 월요일에는
"Start of the week"- 수요일에는
"Midweek"- 금요일에는
"Almost weekend"- 토요일이나 일요일에는
"Weekend"- 그 외의 요일에는
"Regular day"직접 해보기
// TODO: dayName에 따라 description을 설정하는 switch 문을 작성하세요
// Monday인 경우: "Start of the week"
// Wednesday인 경우: "Midweek"
// Friday인 경우: "Almost weekend"
// Saturday 또는 Sunday인 경우: "Weekend"
// 그 외의 요일인 경우: "Regular day"
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
2변수와 기본 자료형
변수란 무엇인가`:=`를 이용한 타입 추론정수 (int)부동 소수점 수불리언 (Booleans)문자열 (Strings)제로 값 (Zero Values)상수명명 규칙요약 - 변수와 타입직접 연습해 보세요: 온라인 Go 컴파일러