go / beginner
Snippet
Die vielseitige for-Schleife
Go hat nur eine Schleifenkonstruktion: for. Sie kann als klassische Dreiteiler-for-Schleife, eine while-artige Schleife oder eine Endlosschleife mit break fungieren. Die range-Klausel iteriert über Slices, Arrays, Maps und Strings mit Index und Wert.
snippet.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package mainimport "fmt"func main() {// Classic counter loopfor i := 0; i < 3; i++ {fmt.Printf("Counter: %d\n", i)}// While-style loopcount := 3for count > 0 {fmt.Printf("Countdown: %d\n", count)count--}// Infinite loop with breaksum := 0for {sum++if sum > 5 {break}}fmt.Printf("Sum: %d\n", sum)// Range iterationfruits := []string{"apple", "banana", "cherry"}for i, fruit := range fruits {fmt.Printf("%d: %s\n", i, fruit)}}
Erklärung
1
for i := 0; i < 3; i++
Klassische C-artige Schleife mit Initialisierung, Bedingung und Post-Anweisung
2
for count > 0
While-artig: nur Bedingung vorhanden, Schleife läuft bis Bedingung falsch ist
3
for { sum++; if sum > 5 { break } }
Endlosschleife mit break für vorzeitiges Beenden wenn Bedingung erfüllt
4
for i, fruit := range fruits
Range gibt Index und Wert für jedes Element zurück; verwende _ um Index zu ignorieren