Golang中关键字fallthrough在switch语句里的用法
和C语言不同,在Go语言里的 switch 语句中,是不需要使用 break 来退出一个case的。也就是说,case执行完成后,是不会继续向下匹配的。
我们可以使用关键字 fallthrough 进行执行下一个case,且fallthrough不会判断下一个case的条件。话句话说,不论下一个case是否被匹配,都会被执行。
package main
import (
"fmt"
)
func main() {
p := fmt.Println
a := 1
switch a {
case 0:
p(0)
case 1:
p(1)
fallthrough
case 2:
p(2) //因为在上一个case中使用了fallthrough关键字,这个case就算条件不匹配也会被执行
case 3:
p(3)
}
}
程序回输出:1 2
如果 fallthrough 后没有case ,则会产生 cannot fallthrough final case in switch 的错误。
如需转载,请注明出处;本文地址:https://www.perfcode.com/p/1482.html