Golang-3:有用な制御ドア-switch


スイッチ式


switchには式とタイプがあります.
ベースなので、式だけチェックしましょう!
Goのswitchの文法は他の言語と大きく違います
package main

import "fmt"

func main() {
	words := []string{"a", "bb", "ccc", "dddd", "eeeee"}
	for _, word := range words {
		switch size := len(word); size {		
        // 글자 길이를 size 로 저장하고 size 값 마다 구분하여 실행합니다.
		case 1, 2:
			fmt.Println(word, "is word.length = 1,2") // break 가 없다!
		case 3:
			tokenLen := len(word)
			fmt.Println(word, "is word.length == 3 , length:", tokenLen)
		case 4:
			// 아무것도 없다..
		default:
			fmt.Println(word, "is another")
		}
	}
}

Console



他の言語で使わなければならない場所はありませんが、
caseに何もない場合はdefaultも実行されません!(何もしない)
確かに可読性が良く、不要なルールが見えず、すっきり!
繰り返し文から脱出したい場合は、breakを追加してforのループから脱出することができます.
break loopを書けばいい