Go语言中的循环控制语句用于改变程序的执行。当给定循环的执行离开其作用域时,则在该作用域内创建的对象也将被拆除。 Go 语言支持 3 种类型的循环控制语句:
- 休息
- 去
- 继续
中断声明
break 语句用于终止它所在的循环或语句。之后,控制将传递到 break 语句之后出现的语句(如果可用)。如果 break 语句存在于嵌套循环中,则它仅终止那些包含 break 语句的循环。
流程图:
例子:
// Go program to illustrate
// the use of break statement
package main
import "fmt"
// Main function
func main() {
for i:=0; i<5; i++{
fmt.Println(i)
// For loop breaks when the value of i = 3
if i == 3{
break;
}
}
}
输出:
0
1
2
3
转到语句
该语句用于将控制转移到程序中的标记语句。标签是有效的标识符,放在控制转移的语句之前。通常程序员不使用 goto 语句,因为它很难跟踪程序的控制流。
流程图:
例子:
// Go program to illustrate
// the use of goto statement
package main
import "fmt"
func main() {
var x int = 0
// for loop work as a while loop
Lable1: for x < 8 {
if x == 5 {
// using goto statement
x = x + 1;
goto Lable1
}
fmt.Printf("value is: %d\n", x);
x++;
}
}
输出:
value is: 0
value is: 1
value is: 2
value is: 3
value is: 4
value is: 6
value is: 7
继续声明
该语句用于在特定条件下跳过循环的执行部分。之后,它将控制权转移到循环的开始。基本上,它跳过后面的语句并继续循环的下一次迭代。
流程图:
例子:
// Go program to illustrate
// the use of continue statement
package main
import "fmt"
func main() {
var x int = 0
// for loop work as a while loop
for x < 8 {
if x == 5 {
// skip two iterations
x = x + 2;
continue;
}
fmt.Printf("value is: %d\n", x);
x++;
}
}
输出:
value is: 0
value is: 1
value is: 2
value is: 3
value is: 4
value is: 7