--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
switch就是if else chain。拿switch的表达式挨个跟case里的表达式比较,如果相等就执行case里的语句。
比方说这个switch
switch a:=5; true {
case a < 5:
println("a < 5")
case a > 5:
println("a > 5")
case a == 5:
println("a == 5")
}
等价于
if a := 5; true == (a < 5) {
println("a < 5")
} else if true == (a > 5) {
println("a > 5")
} else if true == (a == 5) {
println("a == 5")
}
自然地,如果你把switch里的true写成false,那这个switch就等价于
if a := 5; false == (a < 5) {
println("a < 5")
} else if false == (a > 5) {
println("a > 5")
} else if false == (a == 5) {
println("a == 5")
}
--
Best Regards,
Leo Jay