Go语言中的循环控制语句用来改变程序的执行。当给定循环的执行离开其作用域时,在作用域内创建的对象也被销毁。Go语言支持3种循环控制语句:
Break
Goto
Continue
break语句
break语句用于终止其所在的循环或语句。 此后,控件将传递到break语句之后出现的语句(如果有)。 如果break语句存在于嵌套循环中,则它仅终止那些包含break语句的循环。
流程图:
示例
package main
import "fmt"
func main() {
for i:=0; i<5; i++{
fmt.Println(i)
//For循环在i = 3时中断
if i == 3{
break;
}
}
}
输出:
0
1
2
3
goto 语句
该语句用于将控制转移到程序中的标记语句。标签是有效的标识符,放在控件转移处的语句前面。由于难以跟踪程序的控制流,程序员通常不使用goto语句。
流程图:
示例
package main
import "fmt"
func main() {
var x int = 0
//for循环的工作原理与while循环相同
Lable1: for x < 8 {
if x == 5 {
//使用goto语句
x = x + 1;
goto Lable1
}
fmt.Printf("值为: %d\n", x);
x++;
}
}
输出:
值为: 0
值为: 1
值为: 2
值为: 3
值为: 4
值为: 6
值为: 7
continue 语句
该语句用于在特定条件下跳过循环的执行部分。 之后,它将控制转移到循环的开始。 基本上,它跳过以下语句,并继续循环的下一个迭代。
流程图:
示例
package main
import "fmt"
func main() {
var x int = 0
//for循环的工作原理与while循环相同
for x < 8 {
if x == 5 {
//跳过两次迭代
x = x + 2
continue
}
fmt.Printf("值为: %d\n", x)
x++
}
}
输出:
值为: 0
值为: 1
值为: 2
值为: 3
值为: 4
值为: 7