Golang switch语句
当有多个条件判断的时候,使用switch语句的效率会比else if更高。
Switch语句小知识
Go语言的Switch语句与其他编程语言不一样的地方是,不需要使用break来退出case语句。
示例:
1.package main
2.import (
3. “log”
4. “runtime”
5.)
6.func main() {
7. os := runtime.GOOS //获取操作系统.
8. switch os {
9. case “darwin”:
10. log.Println(“mac”)
11. case “linux”:
12. log.Println(“linux”)
13. case “windows”:
14. log.Println(“windows”)
15. }
16.}
运行结果:
1.$ go run main.go
2.$ mac
default 语句
当使用Switch语句进行条件匹配的时候,假如匹配的条件在所有的case语句都不满足的时候就需要用到default语句。
示例:
1.package main
2.import (
3. “log”
4.)
5.func main() {
6. os := “Android”
7. switch os {
8. case “darwin”:
9. log.Println(“mac”)
10. case “linux”:
11. log.Println(“linux”)
12. case “windows”:
13. log.Println(“windows”)
14. default:
15. log.Println(“其他系统”)
16. }
17.}
运行结果:
1.$ go run main.go
2.$ 其他系统
多个表达式的 case
Golang switch语句的case可以包含多个表达式,每个表达式用,分割。
示例:
1.package main
2.import (
3. “log”
4.)
5.func main() {
6. os := “Android”
7. switch os {
8. case “darwin”,“linux”,“windows”:
9. log.Println(“pc端操作系统”)
10. case “iOS”,“Android”:
11. log.Println(“移动端操作系统”)
12. default:
13. log.Println(“其他系统”)
14. }
15.}
运行结果:
1.$ go run main.go
2.$ 移动端操作系统