Golang 中 range 的使用方法及注意事项
一、用法 range 类似迭代器,可以遍历数组,字符串,map 等等,对象的不同,返回的结果也不同。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
package main import "fmt" func main(){ //数组的遍历 a := [3]int {1, 2, 3} for i, n := range a{ fmt.Println(i, n) } //切片的遍历 b := []int{2, 3, 4} for i, n := range b{ fmt.Println(i, n) } //map 的遍历 c := map[string]int{"Hello":1, "World":2} for k, v := range c{ fmt.Println(k, v) } } |
结果:
|
1 2 3 4 5 6 7 8 9 10 |
0 1 1 2 2 3 0 2 1 3 2 4 Hello 1 World 2 |
二、注意事项 1. range 会复制对象,而不是不是直接在原对 ... 阅读更多