33.蛤蟆笔记go语言——switch关键字
Go的switch非常灵活。表达式不必是常量或整数,执行的过程从上至下,直到找到匹配项,而如果switch没有表达式,它会匹配true。这产生一种可能——使用switch编写if-else-if-else判断序列。
它不会匹配失败后自动向下尝试,但是可以使用 fallthrough 使其这样做。
用default可以指定当其他所有分支都不匹配的时候的行为。
代码示例:
package main
import "fmt"
import "time"
func main() {
i := 2
fmt.Print("write", i, " as ")
switchi {
case 1:
fmt.Println("one")
case 2:
fmt.Println("two")
case 3:
fmt.Println("three")
}
switchtime.Now().Weekday() {
casetime.Saturday, time.Sunday:
fmt.Println("it'sthe weekend")
default:
fmt.Println("it'sa weekday")
}
t :=time.Now()
switch{
caset.Hour() < 12:
fmt.Println("it'sbefore noon")
default:
fmt.Println("it'safter noon")
}
}
输出:
write2 as two
it'sa weekday
it'safter noon
有疑问加站长微信联系(非本文作者)