Golang的 for 遍历临时变量
1|0Golang的 for 遍历临时变量
1|1问题描述
当我们对for循环中的遍历的item进行修改时,这个修改是不生效的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | package main import "fmt" func main() { arr := []int{1, 2, 3, 4, 5, 6} fmt.Println( "修改前,arr=" , arr) // for循环遍历中修改,a是临时变量,修改后arr不变 for _, item := range arr { if item == 3 { item = 33 } } fmt.Println( "第一次修改后,arr=" , arr) } |
如果我们执行以上的代码,程序输出如下
但是如果我们确实需要对遍历的数组进行修改时,我们可以直接根据数组的下标对其进行修改
1 2 3 4 5 6 7 8 9 10 11 12 13 | package main import "fmt" func main() { arr := []int{1, 2, 3, 4, 5, 6} fmt.Println( "修改前,arr=" , arr) // for循环遍历中修改,通过下标进行修改是可以的 for index, a := range arr { if a == 3 { arr[index] = 33 } } fmt.Println( "第二次修改后,arr=" , arr) } |
程序会产生以下输出,我们可以看到数组被成功修改了。
__EOF__

本文作者:SoutherLea
本文链接:https://www.cnblogs.com/lizhengnan/p/16171711.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/lizhengnan/p/16171711.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!