Go语言分支控制注意| 青训营

62 阅读1分钟

switch控制注意

  1. 匹配项后不用加break,默认有。即默认执行完case语句块就直接退出该switch控制结构。
  2. case后的表达式可以有多个,用逗号隔开即可。
  3. default语句不是必须的。
  4. case/switch后是一个表达式(即常量值、变量、一个有返回值的函数等都可以)
  5. case后各个表达式的数据类型,必须与switch的表达式的一致。
  6. case后的表达式如果是常量值,则要求不能重复

image.png 8.

image.png 9. switch穿透:在case语句块后增加fallthrough,则会继续执行下一个case。默认只能穿透一层。 10. type switch:判断某个interface变量中实际指向的变量类型。

image.png

switch和if的比较

  1. 使用switch:判断的具体数值不多,而且符合整数、浮点数、字符、字符串这几种类型。
  2. 使用if:对区间的判断和结果为bool类型的判断。