package main
import("fmt")funcmain(){var i int=3switch i {// 多个分支都可以写在一起case0,1,2,3,4,5,6:
fmt.Println("i的值为", i)default:
fmt.Println("i的值不在这个范围内")}}// 运行结果
i的值为 3
case里可以写条件表达式
package main
import("fmt")funcmain(){var i =0switch{case i >0&& i <10:
fmt.Println("i > 0 and i < 10")case i >10&& i <20:
fmt.Println("i > 10 and i < 20")default:
fmt.Println("def")}}// 运行结果
def
switch后面可以直接初始化值
package main
import("fmt")funcmain(){// 初始化i的值switch i :=0;{case i >0&& i <10:
fmt.Println("i > 0 and i < 10")case i >10&& i <20:
fmt.Println("i > 10 and i < 20")default:
fmt.Println("def")}}
案例switch猜数字游戏
package main
import("fmt""math/rand")funcmain(){var n intvar num intvar is_true bool// 随机生成0-100中的整数值
n = rand.Intn(100)
fmt.Println(n)for{
fmt.Println("请输入你猜测的数字:")
fmt.Scanf("%d",&num)switch{case num > n:
fmt.Println("您输入的数字大了.. ")case num < n:
fmt.Println("您输入的数字小了.. ")default:
fmt.Println("恭喜你猜对了.. ")
is_true =true}if is_true ==true{break}}}// 运行结果81
请输入你猜测的数字:10
您输入的数字小了..
请输入你猜测的数字:70
您输入的数字小了..
请输入你猜测的数字:90
您输入的数字大了..
请输入你猜测的数字:81
恭喜你猜对了..
go里面的switch语句-是不要break的package mainimport ( "fmt")func main() { var i int = 3 // go里面的switch它找到后执行完后就不往下走了, 所以不用加break switch i { case 0: fmt.Println("i的值为", i) case 1: fmt.Println("i的...