package main
import "fmt"
import "time"
func main() {
i := 2
fmt.Print("write ", i, " as ")
switch i {
case 1:
fmt.Println("one")
case 2:
fmt.Println("two")
case 3:
fmt.Println("three")
}
switch time.Now().Weekday() {
case time.Saturday, time.Sunday:
fmt.Println("it's the weekend")
default:
fmt.Println("it's a weekday")
}
t := time.Now()
switch {
case t.Hour() < 12:
fmt.Println("it's before noon")
default:
fmt.Println("it's after noon")
}
}
case 문을 이용해서 여러 개의 조건을 처리하는 것을 확인 할 수 있다. 만약 모든 case 조건을 만족하지 않는 값들에 대한 기본처리를 원하고 싶다면 default문을 이용하면 된다. 19-24 코드에서 default 문을 사용하고 있다. 오늘이 Saturdaty 혹은 Sunday가 아닌 경우에 대해서는 "it's a weekday"를 출력한다.
앞서 다뤘던 if/else 문으로도 동일한 코드를 만들 수 있다. if/else문을 사용할지 switch 문을 사용할지는 취향에 따른 문제다. 보통 조건이 많지 않다면 if/else, 조건이 많다면 switch 문을 사용한다. 예제코드를 if/else 문으로 바꿔보자.
예제로 살펴보는 Go
Recent Posts
Archive Posts
Tags