Loops
To break several loops use labels:
func main() {
// Loop is the label
Loop:
for {
for {
break Loop
}
}
}
For loop with range example:
func main() {
// Collection is an array, slice, string, map
for k, v := range collection {
fmt.Println(k,v)
}
}
Another examples:
func main() {
// Define iterator variables
var i, j int
// Fully defined
for i = 0; i < 5; i++ {
fmt.Println(i)
}
// Without initializer
i = 0
for ; i < 5; i++ {
fmt.Println(i)
}
// Without incrementer
i = 0
for i < 5 {
fmt.Println(i)
i++
}
// Short version of loop without initializer and incrementer
i = 0
for i < 5 {
fmt.Println(i)
i++
}
// Infinity loop with break
i = 0
for {
if i == 5 {
break
}
i++
}
// Example of two iterators
for i, j = 0, 0; i < 5; i, j = i+1, j+2 {
fmt.Println(i, j)
}
}