内容来自:尚硅谷-韩老师教学笔记,链接:尚硅谷
1)case/switch 后是一个表达式( 即:常量值、变量、一个有返回值的函数等都可以)
2)case 后的各个表达式的值的数据类型,必须和 switch 的表达式数据类型一致
3)case 后面可以带多个表达式,使用逗号间隔。比如 case 表达式 1,表达式 2,...
4)case 后面的表达式如果是常量值(字面量),则要求不能重复
5) case 后面不需要带 break,程序匹配到一个 case 后就会执行对应的代码块,然后退出 switch,如果一个都匹配不到,则执行 default
6)default 语句不是必须的
7)switch 后也可以不带表达式,类似 if--else 分支来使用。【案例演示】
8)switch 后也可以直接声明/定义一个变量,分号结束,不推荐。 【案例演示】
9)switch 穿透-fallthrough ,如果在 case 语句块后增加 fallthrough,则会继续执行下一个 case,也叫 switch 穿透
10)Type Switch: switch 语句还可以被用于 type-switch 来判断某个 interface 变量中实际指向的变量类型