funcmain(){num :=16switch num {case2:fmt.Println("2进制")case8:fmt.Println("8进制")case10:fmt.Println("10进制")case16:fmt.Println("16进制")default:fmt.Println("内容不正确")}fmt.Println("程序结束")}
switch也支持在条件位置定义变量,变量有效范围为当前switch
funcmain(){switch num :=16; num {case2:fmt.Println("2进制")case8:fmt.Println("8进制")case10:fmt.Println("10进制")case16:fmt.Println("16进制")default:fmt.Println("内容不正确")}fmt.Println("程序结束")}
funcmain(){switch num :=1; num {case1:fmt.Println("1")fallthroughcase2:fmt.Println("2")case3:fmt.Println("3")fallthroughcase4:fmt.Println("4")default:fmt.Println("不是1,2,3,4")}fmt.Println("程序结束")}
break可以用在switch和循环中,表示立即结束,无论当前结构后面还有多少代码
funcmain(){switch num :=1; num {case1:fmt.Println("1")breakfmt.Println("break后面代码都不执行")fallthroughcase2:fmt.Println("2")case3:fmt.Println("3")fallthroughcase4:fmt.Println("4")default:fmt.Println("不是1,2,3,4")}fmt.Println("程序结束")}