Golang の Foreach ループ

Jay Singh 2023年1月30日
  1. Golang で slice 関数を使用して foreach ループを実装する
  2. Golang で map 関数を使用して foreach ループを実装する
Golang の Foreach ループ

この記事では、Go プログラミング言語の関数を使用して foreach ループを実装するさまざまな例と、Golang と使用される関数について簡単に説明します。

Golang で slice 関数を使用して foreach ループを実装する

foreach キーワードは Go には存在しません。それでも、for ループを拡張して同じことを実現できます。

違いは、range キーワードが for ループで使用されることです。他の多くの言語の foreach ループと同様に、ループ内で slices キーまたは値を使用できます。

例 1:

package main

//import fmt package
import (
	"fmt"
)
//program execution starts here
func main() {

	//declare and initialize slice
	fruits := []string{"mango", "grapes", "banana", "apple"}

	//traverse through the slice using for and range
	for _, element := range fruits {

		//Print each element in new line
		fmt.Println(element)
	}
}

出力:

mango
grapes
banana
apple

上記の例では、fruitsのスライスをトラバースします。その後、for-range を使用して各要素を新しい行に出力します。

例 2:

この例では、文字列 slice を反復処理して各単語を印刷します。値が必要なため、キーの代わりにアンダースコア _ を使用します。

package main

import "fmt"

func main() {

	myList := []string{"rabbit", "dog", "parrot"}

	// for {key}, {value} := range {list}
	for _, animal := range myList {
		fmt.Println("My animal is:", animal)
	}
}

出力:

My animal is: rabbit
My animal is: dog
My animal is: parrot

Golang で map 関数を使用して foreach ループを実装する

配列は、マップ内の各要素を反復してループすることができます。Golang Maps は、どのような方法でもソートされていないキーと値のペアのグループです。

キーを使用して取得、更新、または削除できるクイックルックアップと値に広く使用されています。

例:

package main

import "fmt"

func main() {

	myList := map[string]string{
		"dog":      "woof",
		"cat":      "meow",
		"hedgehog": "sniff",
	}

	for animal, noise := range myList {
		fmt.Println("The", animal, "went", noise)
	}
}

出力:

The cat went meow
The hedgehog went sniff
The dog went woof