前言
今天来看看golang的基础分支选择结构,基本和其它语言差不多,只是golang的语法要求较为严格
1、 IF语句
i :=80
if i>90{
println("优秀")
}else if i>=60{
println("及格")
} else {
println("挂科")
}
//if初始化子句 作用域局限于if里面
if j :=100; j>10{
println(j)
}
if初始化子句 作用域局限于if里面
2、 switch语句
golang的switch的语句更加灵活易用
//switch 和if一样 也可以初始化
//1
score:=95
grade:='A'
switch {
case score>=90:
grade = 'A'
case score>=80:
grade = 'B'
case score>=60,score>=70:
grade = 'C'
default:
grade = 'D'
}
println(string(grade))
switch grade {
case 'A','B':
println("非常好")
case 'C':
println("加油")
case 'D':
println("垃圾")
}
case里面可以写多个条件
case score>=60,score>=70:
同时注意golang里边的case不需要像c和java一样break
3、循环— FOR循环
go里面没有while循环 但是可以用for达到同样的效果
//for 没有while
a:=1
b:=4
for a<b{
print(a,"-")
a++
}
println()
for i:=1;i<4;i++{
print(i,"-")
}
range的使用 让循环更加方便 和python range功能有点差别
range 返回两个值 第一个为索引 第二个为值
range可以应用于所有可以迭代的类型
//range
s:="泮斌Biningo"
for index,c:=range s{
println(index,"-",string(c))
}
注意下面的写法是不可以的
for i,c:=range 5{
fmt.Println(i,c)
}