什么是fallthrough?
fallthrough是golang中的一个关键字,它用于在switch语句中控制代码的执行流程。通常情况下,当一个case分支匹配成功后,switch语句就会结束,不会继续执行后面的case分支。但是,如果在一个case分支的最后加上fallthrough关键字,那么switch语句就会继续执行下一个case分支,无论下一个case分支的条件是否满足。这样可以实现一些特殊的逻辑,比如多个case分支共享一些代码。
fallthrough的用法
fallthrough的用法很简单,只需要在case分支的最后加上fallthrough关键字即可。例如,下面的代码演示了如何使用fallthrough实现一个简单的计算器:
package main
import "fmt"
func main() {
var a, b int
var op string
fmt.Println("请输入两个整数和一个运算符(+ - * /):")
fmt.Scanf("%d %d %s", &a, &b, &op)
switch op {
case "+":
fmt.Printf("%d + %d = %d\n", a, b, a+b)
fallthrough
case "-":
fmt.Printf("%d - %d = %d\n", a, b, a-b)
fallthrough
case "*":
fmt.Printf("%d * %d = %d\n", a, b, a*b)