English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang 基礎チュートリアル

Golang 制御文

Golang ファンクション & メソッド

Golang 構造体

Golang スライス & 配列

Golang 文字列(String)

Golang ポインタ

Golang インターフェース

Golang 并行

Golang エラ(Error)

Golang その他の雑多な事項

Go 言語のループ制御文

Go言語のループ制御文は、プログラムの実行を変更するために使用されます。ループの実行がその範囲を離れると、その範囲内に作成されたオブジェクトも破棄されます。Go言語は3種類のループ制御文:

  1. Break

  2. Goto

  3. 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ループと同じです
  Label1: for x < 8 { 
      if x == 5 { 
           
         //goto文の使用
         x = x + 1; 
         goto Label1 
      {} 
      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