map是一种键值对的映射,它可以在平时的编程中,存储大部分你需要存储的内容
map的形式
map[数据类型]数据类型
map的创建
[ ]在这里表示可选
make()创建map
变量名 := make(map[数据类型]数据类型, [长度])
创建map顺便赋值
变量名 := map[数据类型]数据类型{
[数据值: 数据值, ...]}
什么类型可以作为map的键
以下内容都是赋值操作中的样子,如果是声明的话,那么它的样子如下
var 变量名 map[数据类型]数据类型
如上面的代码所见,它的最后面是不用带 { } 的
string
map[string]数据类型{
}
int
map[int]数据类型{
}
bool
map[bool]数据类型{
}
float
map[float32]数据类型{
}
map[float64]数据类型{
}
byte
map[byte]数据类型{
}
struct
map[结构体名]数据类型{
}
interface
map[接口名]数据类型{
}
指针
map[指针]数据类型{
}
所有类型
interface 表示可以接受上面所列举的类型作为键
如果对空接口 interface{} 有什么不明白的话,可以去看看接口的内容
map[interface{
}]数据类型{
}
什么类型可以作为map的值
任意类型都可以成为map的值
map的操作
以下操作均以 string 类型为代表
map的初始化
initMap := make(map[string]string, 10)