LoginSignup
0
0

More than 1 year has passed since last update.

【自己学習】Go言語を学ぶ(6)

Posted at

公式チュートリアルから基本を学ぶ
https://go-tour-jp.appspot.com/list

For(繰り返し)

  • 基本的に、 for ループはセミコロン ; で3つの部分に分かれています:

    • 初期化ステートメント: 最初のイテレーション(繰り返し)の前に初期化が実行されます
    • 条件式: イテレーション毎に評価されます
    • 後処理ステートメント: イテレーション毎の最後に実行されます
    • 初期化ステートメントは、短い変数宣言によく利用します。その変数は for ステートメントのスコープ内でのみ有効です。

ループは、条件式の評価が false となった場合にイテレーションを停止します。

サンプルコード:
1~9まで足していき合計値を出力

package main

import "fmt"

func main() {
  sum := 0
  for i := 0; i < 10; i++ {
    sum += i
  }
  fmt.Println(sum)
}

結果: 45

For continued

  • 初期化と後処理ステートメントの記述は任意で可能。

サンプルコード

package main

import "fmt"

func main() {
  sum := 1
  for ; sum < 5; {
    sum += sum
  }
  fmt.Println(sum)
}

結果: 8

For is Go's "while"

  • for文はセミコロン(;)を省略することもできます。つまり、C言語などにある while は、Goでは for だけを使います。

サンプルコード

package main

import "fmt"

func main() {
  sum := 1
  for sum < 5 {
    sum += sum
  }
  fmt.Println(sum)
}

結果: 8

Forever(無限ループ)

ループ条件を省略すれば、無限ループ( infinite loop )になりますので、無限ループをコンパクトに表現できます。

サンプルコード

package main

func main() {
  for {
  }
}

結果: 無限ループする

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0