07.手撕Go语言-复合数据类型之映射

映射是存储一系列无序的key/value对,通过key来对value进行操作(增、删、改、查)。映射的key只能为可使用==运算符的值类型(字符串、数字、布尔、数组),value可以为任意类型

声明

map声明需要指定组成元素key和value的类型,在声明后,会被初始化为nil,表示暂不存在的映射

07.01.png

初始化

  1. 使用字面量初始化:map[ktype]vtype{k1:v1, k2:v2, …, kn:vn}
  2. 使用字面量初始化空映射:map[ktype]vtype{ }
  3. 使用make函数初始化

make(map[ktype]vtype),通过make函数创建映射

07.02.png

操作

  1. 获取元素的数量

使用len函数获取映射元素的数量

07.03.png
  1. 访问
07.04.png

当访问key存在与映射时则返回对应的值,否则返回值类型的零值

  1. 判断key是否存在

通过key访问元素时可接收两个值,第一个值为value,第二个值为bool类型表示元素是否存在,若存在为true,否则为false

07.05.png
  1. 修改&增加

使用key对映射赋值时当key存在则修改key对应的value,若key不存在则增加key和value

07.06.png
  1. 删除

使用delete函数删除映射中已经存在的key

07.07.png
  1. 遍历

可通过for-range对映射中个元素进行遍历,range返回两个元素分别为映射的key和value

07.08.png

使用

统计演讲稿中“我有一个梦想”中各英文字符出现的次数

07.09.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容