《Shell 转 Go》
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

03. 分支语句 (switch / case)

在 Shell 中使用 case ... in 做分支语句。

  1. 使用 case ... in 作为开始, 使用 esac 作为结尾
  2. 使用 xxx ) 格式作为条件分支。 其中 xxx 可以是多个并列条件
  3. 使用 ;; 作为语句块结束。
  4. 使用 * 作为默认条件语句, 可省略。
case $1 in
"n1")
    echo "n1"
    ;;
"n2" | "n3")
    echo "n2 or n3"
    ;;
*)
    echo "default"
    ;;
esac

在 Go 中使用 switch 作为分支语句

  1. 使用 switch 关键字作为开始
  2. 使用 case 关键字作为分支条件。
  3. 没有单独的结尾关键字
  4. 使用 default 作为
switch n {
case 1:
    fmt.Println("1")
    fallthrough
case 2, 3, "a":
    fmt.Println("2 或 3")
default:
    fmt.Println("其他")
}

当使用 fallthrough 关键字时, 会直接进入下一条 case 语句, 不再做判断。 可以当作多个 并列条件 时使用。