一、区别
switch语句是语言里面非常常见的语句,但是Go语言和C 对它的使用,却实在是迥异,差距非常之大。
1.先从写法上面,C 中,switch之后紧跟括号,Go后面没有括号,甚至可以省略。
2.switch后的变量类型,C 中必须是整型或者可以默认转换成整型的数据类型,Go中可以是任何类型。
3.C 中case后面一般要跟break来终止当前case,否则继续执行下一个case的代码。Go语言中,默认没有break,会直接结束当前case,如果想要于下一个case合并,需要新增fallthrough关键字。
二、例子
这里的例子,以Go为主。
1.字符串作为类型,进行区分使用,case后没有break的结果展示。
2.fallthrough的引入之后,导致的不同结果
例子1两段代码合并
例子2两个条件合并
3.switch没有变量的使用格式
灰子作于二零一九年六月五日。