메뉴

문서정보

예제로 살펴보는 Go

Switch 문은 여러 개의 조건을 분기하기 위해서 사용한다.
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가 아닌 경우에 대해서는 "its a weekday"를 출력한다.

앞서 다뤘던 if/else 문으로도 동일한 코드를 만들 수 있다. if/else문을 사용할지 switch 문을 사용할지는 취향에 따른 문제다. 보통 조건이 많지 않다면 if/else, 조건이 많다면 switch 문을 사용한다. 예제코드를 if/else 문으로 바꿔보자.
package main

func main() {
    
}
		

다음 예제 : Arrays