map:映射,是一种专门用于存储键值对的集合,属于引用类型
存储特点:
A:存储的是无序的键值对
B:键不能重复,并且和value是一一对应的
map中的key不能重复,如果重复,那么新的value会覆盖原来的value,程序不会报错
创建map:
var map1 map[key类型]value类型
为nil,不能直接使用
var map2=make(map[key类型]value类型)
var map3=map[key类型]value类型{key:value,key:value,key:value...}
注意:如果不初始化一个map,那么就会创建一个nil map,nil map不能用来存放数据
添加/修改:
map[key]=value
如果key存在,就修改数据
如果key不存在,就添加数据
获取:
map[key]-->value
value,bool:=map[key]
根据key获取对应的value,如果key存在,bool为true
如果key不存在,bool为false
删除:
delete(map,key)
如果key存在,删除成功
如果key不存在,删除失败
获取map长度:
len()
slice默认值:nil (空切片有底层数组,可以直接使用)
map默认值:nil (空map没有底层数组,不可以直接使用)