博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用for循环对 golang 中结构体数组取值进行修改时,需要注意的问题
阅读量:6535 次
发布时间:2019-06-24

本文共 614 字,大约阅读时间需要 2 分钟。

  hot3.png

废话少说,直接上代码:

type a1 struct {		key1 string		key2 string		key3 string	}	testData := []a1{		a1{"1","2", "3"},		a1{"4","5", "6"},	}

上面的代码定义了一个结构体,声明了一个数组。

采用循环变量可以修改数组中结构体的取值:

for i := 0; i < len(testData); i++ {		testData[i].key3 = "999"	}	fmt.Printf("%v", testData)

输出:[{1 2 999} {4 5 999}]

采用 range 获取的下标值,然后用下标方式引用的数组项也可以直接修改:

for idx, _ := range testData {		testData[idx].key3 = "999"	}	fmt.Printf("%v", testData)

输出:[{1 2 999} {4 5 999}]

采用 range 获取数组项不能修改数组中结构体的值:

for _, item := range testData {		item.key3 = "999"	}	fmt.Printf("%v", testData)

输出:[{1 2 3} {4 5 6}]

转载于:https://my.oschina.net/xuleo/blog/1624683

你可能感兴趣的文章
“灾备全生态”全揭秘
查看>>
CSS盒子模型
查看>>
Zeppelin Prefix not found.
查看>>
ubuntu中eclipse安装svn插件问题
查看>>
linux 的网络设置
查看>>
首届“欧亚杯”象翻棋全国团体邀请赛圆满收评!
查看>>
编译tomcat
查看>>
oracle-xe手工创建数据库
查看>>
Cisco交换机 链路聚合
查看>>
我的友情链接
查看>>
UG中卸载被占用的DLL
查看>>
eclipse 设置注释模板详解,与导入模板方法介绍总结
查看>>
Cocos2d-x3.2 文字显示
查看>>
估计下星期就能考科目二了
查看>>
轻松实现localStorage本地存储和本地数组存储
查看>>
mongodb group
查看>>
python+selenium自动化测试(二)
查看>>
(笔记 - 纯手敲)Spring的IOC和AOP 含GIT地址
查看>>
7-设计模式介绍
查看>>
让运维更高效:关于ECS系统事件
查看>>