Go语言Map与结构体
Map基础
Map是Go内置的无序键值对集合,常用于字典、索引等场景。
// 声明和初始化
var m1 map[string]int // nil map,需先make
m2 := make(map[string]int) // 空map
m3 := map[string]int{"Tom": 18, "Jerry": 20}
// 增删改查
m2["Alice"] = 25 // 添加或修改
age := m2["Alice"] // 查询
v, ok := m2["Bob"] // 判断key是否存在
if ok {
fmt.Println("Bob的年龄:", v)
}
delete(m2, "Alice") // 删除key
// 遍历
for k, v := range m3 {
fmt.Println(k, v)
}- Map是引用类型,赋值和传参不会复制底层数据。
- 查询不存在的key返回零值。
- 用delete删除key。