key-value的数据结构,又叫字典或关联数组
map的声明:
var map1 map[keytype]valuetype
var a map[string]string
var a map[string]int
var a map[int]string
var a map[string]map[string]string
声明是不会分配内存的,初始化需要make
map相关操作:
var a map[string]string = map[string]string{“hello”: “world”}
a = make(map[string]string, 10)
a[“hello”] = “world” //插入和更新
val, ok := a[“hello”] //查找
for k, v := range a { //遍历
fmt.Println(k,v)
}
delete(a, “hello”) //删除
len(a) //map长度
map是引用类型
func modify(a map[string]int) {
a[“one”] = 134
}
批量分配内存
Items := make([]map[int][int], 5)
For I := 0; I < 5; i++ {
items[i] = make(map[int][int])
}
map排序
a. 先获取所有key,把key进行排序
b. 按照排序好的key,进行遍历
map反转
初始化另外一个map,把key、value互换即可