哪些类型可以作为map的key
只要可比较的类型都可以作为 map 的key,除了 slice、map、functions 这3种类型:
- bool
 - int,包括有符号和无符号整数
 - float32/float64
 - string
 - 指针
 - channel
 - interface
 - struct
 只包含上述类型的数组
如果是结构体,只有 hash 后的值相等以及字面值相等,才被认为是相同的 key。很多字面值相等的,hash出来的值不一定相等,比如引用。
顺便说一句,任何类型都可以作为 value,包括 map 类型