【Go简明手册】Go顺序编程--流程控制

文章目录
  1. 1. if 语句
  2. 2. for 语句
  3. 3. 跳转语句

[toc]

Go 语言提供的流程控制语句包括 ifswitchforgotoselect,其中 select 用于监听 channel(通道)在讲解通道的时候再详细介绍。

if 语句

语法:

1
2
3
4
5
6
7
if optionalStatement1; booleanExpression1 {
block1
} else if optionalStatement2; booleanExpression2 {
block2
} else {
block3
}

其中 optionalStatement 是可选的表达式,真正决定分支走向的是 booleanExpression1 的值。

for 语句

Go 语言的 for 语句可以遍历数组,切片,映射等类型,也可以用于无限循环。以下是其语法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for { // 无限循环
block
}

for booleanExpression { // while循环,在Go语言中没有while关键字

}

for index, char := range aString { // 迭代字符串

}

for item := range aChannel { // 迭代通道

}

跳转语句

Go 语言中使用 goto 关键字实现跳转。goto 语句的语义非常简单,就是跳转到本函数内的某个标签,例如:

1
2
3
4
5
6
7
8
9
func myfunc(){
i := 0
THIS: //定义一个THIS标签
fmt.Println(i)
i++
if i < 1 {
goto THIS //跳转到THIS标签
}
}