golang for循环时修改自身的值
- 一、尝试 v.Name 直接修改
- 1、代码
- 2、打印
- 3、结论
- 二、println() 函数查看内存地址是否一致
- 1、代码
- 2、打印
- 3、结论
- 三、users[k].Name 修改
- 1、代码
- 2、打印
- 3、结论
一、尝试 v.Name 直接修改
1、代码
package mainimport "fmt"type User struct {Name string
}func main() {users := []User{{Name: "姓名1"}, {Name: "姓名2"}, {Name: "姓名3"}}for _, v := range users {v.Name = "暂无"}fmt.Println(users)
}
2、打印
[{姓名1} {姓名2} {姓名3}]Process finished with exit code 0
3、结论
修改失败
二、println() 函数查看内存地址是否一致
1、代码
package maintype User struct {Name string
}func main() {users := []User{{Name: "姓名1"}, {Name: "姓名2"}, {Name: "姓名3"}}for k, v := range users {println(&users[k], " VS ", &v)}
}
2、打印
0xc00003bf48 VS 0xc00003bf38
0xc00003bf58 VS 0xc00003bf38
0xc00003bf68 VS 0xc00003bf38Process finished with exit code 0
3、结论
内存地址不一样,修改无效
三、users[k].Name 修改
1、代码
package mainimport "fmt"type User struct {Name string
}func main() {users := []User{{Name: "姓名1"}, {Name: "姓名2"}, {Name: "姓名3"}}for k := range users {users[k].Name = "暂无"}fmt.Println(users)
}
2、打印
[{暂无} {暂无} {暂无}]Process finished with exit code 0
3、结论
修改成功
golang for循环时修改自身的值相关推荐
- SpringBoot打成jar包cmd中运行时修改配置文件的值
场景 若依前后端分离版手把手教你本地搭建环境并运行项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108465662 在上面 ...
- Python - 在for循环体内修改i值
场景:在循环体内判断条件发生时,重新执行执行当前循环体(保留当前i值) 常规:类似的需求一般会在循环体里写一个 if 加上continue / break 实际:但是在for循环内修改i值,只会对当前 ...
- java只修改变的字段_java注解之运行时修改字段的注解值操作
今天遇到需求:导入Excel时候列头会发生变化,客户是大爷要求你改代码, 导入Excel是用easypoi做的,识别表头是用注解@Excel(name = "xxx")通过这个na ...
- java通过注解修改字段名_java注解之运行时修改字段的注解值操作
java注解之运行时修改字段的注解值操作,注解,字段,表头,属性,对象 java注解之运行时修改字段的注解值操作 易采站长站,站长之家为您整理了java注解之运行时修改字段的注解值操作的相关内容. 今 ...
- C++对类(或者结构体)中字符数组赋值时,出现表达式必须是可修改的左值的问题
最近自己遇到了这类问题,在csdn上找到了很多大神给的解答,非常到位 特别感谢这位: https://blog.csdn.net/JQ_AK47/article/details/53169799 问题 ...
- java注解之运行时修改字段的注解值
今天遇到需求:导入Excel时候列头会发生变化,客户是大爷要求你改代码, 导入Excel是用easypoi做的,识别表头是用注解@Excel(name = "xxx")通过这个na ...
- php foreach ,PHP学习之foreach循环时加符号的说明
本文主要内容是关于PHP的foreach循环时加&符号的说明,感兴趣的朋友可以了解一下. foreach时加&符号:遍历的同时改变原数组即修改数据或者增加数据. $arr = ['a' ...
- C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断...
C#保留2位小数几种场景总结 场景1: C#保留2位小数,.ToString("f2")确实可以,但是如果这个数字本来就小数点后面三位比如1.253,那么转化之后就会变成1.25. ...
- python循环修改列表_关于python:如何在for循环中修改列表项?
现在,我知道在迭代循环中修改列表是不安全的. 但是,假设我有一个字符串列表,并且我想自己剥离字符串. 替换可变值是否算作修改? 字符串不是可变值. @ user470379:列表的元素是否可变与在循环 ...
- List集合增强for循环时产生的异常
List集合增强for循环时产生的异常 1.介绍 在List 集合使用增强for循环遍历时,我们如果改变了集合的长度,会抛出异常.下面举个例子: public static void main(Str ...
最新文章
- 3人小公司1年的创业成本
- java 线程池的理解_JAVA线程池原理的理解
- 使用分页方式读取超大文件的性能试验
- 家用简单电线路图_电师傅电工总结的家用电器,漏电开关,电线配置知识,简单实用...
- MySQL 5.7.25 在Windows 7中安装的记录
- 探讨【IGE】的源代码【一】。
- 《谈判是什么》笔记……
- 41-【JS编程接口】DOM事件与事件委托
- 我的第一次CTF比赛(SDPC)
- 大学计算机372=多少Q,计算机网络Q0831
- 搭建个人网站需要的三个步骤
- html如何控制图片自动放缩,如何用js控制图片放大缩小
- 熊猫烧香病毒背后,网络高手对决一个月
- 制作一个简单HTML宠物猫网页(HTML+CSS)
- 海思开发板上添加ftp功能
- 【校招VIP】前端操作系统之页面转换算法
- 小红书怎么推广笔记?小红书推广笔记有什么用?
- linux swap分区满了,Linux下如何释放内存、swap分区满了怎么办!
- java添加员工代码_利用java代码,编写JDBC连接数据库新增员工信息的步骤. 员工信息表:t_emp(id int?...
- invoke,十分钟搞定强大的Python任务自动化工具
热门文章
- G - Ordering Tasks(拓补排序)
- sklearn pipeline_使用python+sklearn实现管道、Anova和SVM
- 在写csdn博客时,如何实现用超链接进行页面内跳转?
- 面向对象6:构造器、JavaBean、UML图、this的使用
- 通过释放cache内存解决ubuntu死机问题
- NYOJ题目36-最长公共子序列(经典动态规划题)
- WebStorm破解---最新 2019.4.24
- 比赛结果展示时,某些文字过长,如何使其换行又不影响美观?
- 关于启动PPT时,出现错误对话框的问题的解决.
- 图:[电子商务-明日网商-知识竞赛策划方案-双屏PPT技术策划] 某大学明日网商知识竞赛圆满结束.