📜  Go 语言中的循环控制语句

📅  最后修改于: 2021-10-24 13:16:29             🧑  作者: Mango

Go语言中的循环控制语句用于改变程序的执行。当给定循环的执行离开其作用域时,则在该作用域内创建的对象也将被拆除。 Go 语言支持 3 种类型的循环控制语句:

  1. 休息
  2. 继续

中断声明

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