前言
go中if 条件语句,for循环语句都没有圆括号,但是必须要有花括号。
GO语言if语句
- 语法
if 布尔表达式 { #布尔表达式为真时执行。 }else{ #布尔表达式为false时执行。 } //单独一个 if 语句 偶数时候 if x % 2 == 0 { //... } //if 带上else if x % 2 == 0 { //偶数... } else { //奇数... } //if else if else多分支情况 num:=10 if num >0 { fmt.Println("big zero") }else if num ==0 { fmt.Println("t equal zero") }else { fmt.Println("z small zero ") }
- swich语句
switch语句没有break,默认只会执行匹配到的case,匹配成功后不会执行其他case。
swich执行多条件匹配,一个case中可以用逗号分隔多个值
switch语句若要执行后面的case,可以使用fallthrough,不过要注意使用fallthrough后不会进行判断下一个case是否为true 会直接执行下一条case中的语句。
var i int=4 switch i { case 1: fmt.Println("one") case 2: fmt.Println("two") case 3,4,5: fmt.Println("3,4,5") case 6 ,7, 9 fmt.Println("big 6") fallthrough case 10 fmt.Println("big than 6") default: fmt.Println("oh no") }
- for语句
go中没有while循环语句,都是用for来代替 ,for 有三种形式只有第一种使用分号:
# for i:=0;i<10;i++ { fmt.Println(i) } i:=5 for i<10 { fmt.Println(i) i++; } for { if i>10{ break } i++ }
另外for 循环还可以对字符串、数组、切片等进行迭代输出元素
主要形式是:For -each range循环
strings:=[]string{"google","after","test"}
for i ,j := range strings{
fmt.Println(i,s)
}