遍历切片
切片是一个集合,可以迭代其中的元素。Golang 有个特殊的关键字 range,它可以配合关键字 for 来迭代切片里的元素
num1 := []int{1, 2, 3}for index, value := range num1 {fmt.Printf("index: %d value: %d\n", index, value)}
输出的结果为
index: 0 value: 1index: 1 value: 2index: 2 value: 3
当迭代切片时,关键字 range 会返回两个值。第一个值是当前迭代到的索引位置,第二个值是该位置对应元素值的一份副本。
:::warning 需要强调的是,range 创建了每个元素的副本,而不是直接返回对该元素的引用。要想获取每个元素的地址,可以使用切片变量和索引值:
:::
num1 := []int{1, 2, 3}for index, _ := range num1 {num1[index] += 1}for index, value := range num1 {fmt.Printf("index: %d value: %d\n", index, value)}
