range itera sobre elementos de uma variedade de estrutura de dados. Aqui será demonstrado como utilizá-lo com algumas das estruturas de dados já apresentadas. |
|
package main |
|
import "fmt" |
|
func main() { |
|
Aqui é utilizado o |
nums := []int{2, 3, 4} sum := 0 for _, num := range nums { sum += num } fmt.Println("soma:", sum) |
|
for i, num := range nums { if num == 3 { fmt.Println("índice:", i) } } |
|
kvs := map[string]string{"a": "apple", "b": "banana"} for k, v := range kvs { fmt.Printf("%s -> %s\n", k, v) } |
|
for k := range kvs { fmt.Println("key:", k) } |
|
for i, rune := range "go" { fmt.Println(i, rune) } } |
$ go run range.go soma: 9 índice: 1 a -> apple b -> banana key: a key: b 0 103 1 111 |
Próximo exemplo: Functions.