关键字range可用于循环,类似迭代器操作,它可以遍历slice,array,string,map和channel,然后返回索引或值。可以使用”_”来忽略不想要的返回值。可以方便的读取上面类型中的内容,例如:
package main
import "fmt"
func main() {
str1 := []string{
"1", "2", "3", "4"}
for key, value := range str1 {
fmt.Println(key, ":", value)
}
}
但是如果想要改变这些类型的值,用range就可能达不到你期望的效果。例如,将上面str1中的值”2”和”4”变为”6”,使用range来进行遍历修改。
package main
import

Go语言的for range关键字常用于遍历数组、切片、map和通道,但在尝试修改切片元素值时,可能会遇到意料之外的结果。由于在range循环中,遍历的是元素的副本,直接修改不会影响原始切片。要正确修改切片内容,应使用传统的for循环和索引访问。
最低0.47元/天 解锁文章
4063





