Go语言中的循环控制语句用来改变程序的执行。当给定循环的执行离开其作用域时,在作用域内创建的对象也被销毁。Go语言支持3种循环控制语句:
Break
Goto
Continue
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语句。
流程图:
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
该语句用于在特定条件下跳过循环的执行部分。 之后,它将控制转移到循环的开始。 基本上,它跳过以下语句,并继续循环的下一个迭代。
流程图:
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