fmt.Println("k = ",k)case2: fmt.Println("k = ",k)case3: fmt.Println("k = ",k)default: fmt.Println("default case") } } 注意:case 后面的常量不可以重复 多个条件的case 语句 多个条件的case语句和单个没有什么差别,只是选择的范围大了一点: import"fmt"funcmain(){ k :=4switchk {case...
switch 的穿透 fallthrought fallthrough`语法可以执行满足条件的case的下一个case,是为了兼容C语言中的case设计的。 func switchDemo5(){s:="a"switch{cases=="a":fmt.Println("a")fallthroughcases=="b":fmt.Println("b")cases=="c":fmt.Println("c")default:fmt.Println("...")}}输出:a b varn...
代码: switchmood{case"snow":fallthroughcase"fine":fmt.Println("心情超好!")case"rainy":fallthroughcase"overcast":fmt.Println("心情有点低落!")default:fmt.Printf("undefine mood %s",mood)} 输入: snow 输出: 心情超好! 三、总结 switch和if同为逻辑判断的条件语句,但是if可以是对变量的值域判断,swi...
Golang 使用switch和多值caseSwitch 语句是一种多路分支,它提供了与冗长的if-else比较的另一种选择。它根据表达式的值或单个变量的状态从多个块列表中选择要执行的单个块。使用具有多个值的case的switch语句对应于在单个case中使用 多个值。 这是通过用逗号分隔case中的多个值来实现的。
func NewPrinter(printerType string) printer { switch printerType { case "simple": return &simplePrinter{} case "fields": retur
1, switch的执行流程是,先执行表达式,得到值,然后和case的表达式进行比较,如果相等,就匹配到,然后执行对应case的语句块,退出switch控制。 2,如果switch的表达式的值没有和任何case的表达式匹配成功,则执行default的语句块,执行后退出switch控制。 3,golang的case后的表达式可以有多个,使用 逗号分隔 ...
go语言的switch…case语句中,只要匹配到case中一条,就只执行该case,执行完就自动跳出,不像C语言需要在每个case执行完加break语句,否则会继续向下执行其它case语句。 示例一:总结送免费学习资料(包含视频、技术学习路线图谱、文档等) package main import "fmt" ...
//判断月份的取值范围 ifmonth>=1&&month<=12{ switchmonth{ case1:fallthrough case3:fallthrough case5:fallthrough case7:fallthrough case8:fallthrough case10:fallthrough case12:day=31 case2://需要判断是否为闰年 if(year%400==0)||(year%4==0&&year%100!=0){ day=29 }else{ day=28 } de...
switch v{case 1:fmt.Println("222")case 2:fmt.Println("333")}} 输出222 示例3: import ( "fmt" "time" ) func main(){v := 1 switch v{case v < 3:fmt.Println("222")case v < 6:fmt.Println("333")}} 运行结果: [work@ hello2]#go run1.go# command-line-arguments./1.go:5:...
6. switch - case 语句默认加了 break 语句 switch i { case 0: fmt.Println(0) case 1...