Go言語のループ処理について

Go言語のループ処理 Go

今回はGo言語のループ処理について、紹介します。
Go言語には while文が無く、繰り返し処理はすべて for を用います。また、他の言語同様、continue でスキップ、break でループ処理を抜けることができます。

基本の書き方

for 初期化; 条件式; 後処理 {
	// ...
}

サンプルコード:

package main

import "fmt"

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

結果:

0
1
2
3
4

whileのような書き方

for 条件式 {
 // …
 処理
}

サンプルコード:

package main

import "fmt"

func main() {
var i = 0

for i < 5 {
fmt.Println(i)
i++
}
}

結果:

0
1
2
3
4

無限ループ

for {
 // …
 処理
}

サンプルコード:

package main

import "fmt"

func main() {
i := 0
for {
i += 1
if i > 5 {
break
}
if i % 2 == 0 {
continue
}
fmt.Println(i)
}
}

結果:

1
3
5

rangeを用いてループ処理

配列やスライスなどイテラブルなものに対しては range を用いてループ処理することができます。

for インデックス, 変数 := range 配列 {
処理
}

サンプルコード:

package main

import "fmt"

func main() {
colors := [...]string{"Red", "Green", "Blue"}

for i, color := range colors {
fmt.Printf("%d: %s\n", i, color)
}
}

結果:

0: Red
1: Green
2: Blue
タイトルとURLをコピーしました