什么叫零代码?- 领略编程的新纪元
141
2023-10-12
【摘要】 本书摘自《零基础Go语言 从入门到精通》一书中第六章,第3.3节,编者是零壹快学
6.3.3 遍历映射
map的遍历主要通过for循环来完成,遍历时可同时获得map的键和值。
动手写6.3.4
执行结果如下:
若只想遍历键,for循环可改写成如下形式:
执行结果如下:
若只想遍历值,for循环可改写成如下形式:
执行结果如下:
6.3.4 从映射中删除键值对
Go语言通过delete()函数来对map中的指定键值对进行删除操作,delete()函数格式如下:
其中map为要删除的map实例,键为map键值对中的键。
动手写6.3.5
执行结果如下:
注意:delete()函数会直接删除指定的键值对,而不是仅仅删除键或值。
另外, Go语言没有为map提供清空所有元素的方法,想要清空map的唯一方法就是重新定义一 个新的map。
○6.4 小结
◇ 数组是具有相同类型且长度固定的一组数据项序列,这组数据项序列对应存放在内存中的 一块连续区域中,数组大小之后不可再变。
◇ 切片表示多个同类型元素的连续集合,但是切片本身并不存储任何元素,而只是对现有数 组的引用。
◇ 如果切片是从其他数组或切片生成,新切片的元素添加需要考虑对原有数组或切片中数据 的影响。
◇ Go语言没有为删除切片元素提供方法,所以需要我们手动将删除点前后的元素连接起来, 从而实现对切片中元素的删除。
◇ 映射是一种无序的键值对的集合,当程序中需要存放有关联关系的数据时,往往就会用到
map。
◇ Go语言没有为map提供清空所有元素的方法,想要清空map的唯一方法就是重新定义一个新 的map。
○6.5 知识拓展
并发操作map
对于map,我们可以定义一个键和值,然后从map中获取、变更和删除这个值。6.3小节中,对 map的操作都是在单协程的情况下完成的,这种情况下一般不会出现错误。如果是多个协程并发访 问一个map,就有可能会导致程序异常退出,具体示例程序如下:
动手写6.5.1
执行结果如下:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~