Go关键字--fallthrough


友情推广
在这里插入图片描述

fallthrough

fallthrough关键字只能用在switch中。且只能在每个case分支中最后一行出现,作用是如果这个case分支被执行,将会继续执行下一个case分支,而不会去判断下一个分支的case条件是否成立。下边来一段示例:

package main

import "fmt"

func main() {
	switch "a" {
	case "a":
		fmt.Println("匹配a")
		fallthrough
	case "b":
		fmt.Println("a成功了,也执行b分支")
	case "c":
		fmt.Println("a成功了,c分支会执行吗?")
	default:
		fmt.Println("默认执行")
	}
}

输出信息是:

匹配a
a成功了,也执行b分支

switch选择器的变量值是"a",所以,case ”a"分支代码将会被执行,case "a"分支最后使用了关键字fallthrough,虽然下一个case “b"条件不成立,但是case "b"由于受到fallthrough的影响,其分支中的代码仍然被执行,当case "b"分支执行完成后,由于case "b"最后一行没有使用fallthrough,所以switch选择器退出执行。

猜你喜欢

转载自blog.csdn.net/hzwy23/article/details/82872223
今日推荐