go / beginner
Snippet
Range: Über Sammlungen iterieren
Das range-Schlüsselwort bietet eine saubere Möglichkeit, über Slices, Arrays, Maps und Channels zu iterieren. Für Slices und Arrays gibt es sowohl den Index als auch den Wert zurück. Für Maps gibt es den Schlüssel und den Wert zurück. Sie können unerwünschte Werte mit dem Unterstrich _ ignorieren.
snippet.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package mainimport "fmt"func main() {colors := []string{"Red", "Green", "Blue"}for index, value := range colors {fmt.Printf("%d: %s\n", index, value)}ages := map[string]int{"Max": 25, "Anna": 30}for name, age := range ages {fmt.Println(name, "is", age)}}
Erklärung
1
for index, value := range colors {
Range gibt Index und eine Kopie jedes Elements zurück
2
fmt.Printf("%d: %s\n", index, value)
Druckt formatierte Ausgabe mit Index und Wert
3
for name, age := range ages {
Range über Map gibt Schlüssel-Wert-Paare zurück
4
_ = index
Unterstrich verwirft unerwünschten Index