Go 语言提供了一个强大的 Map 结构体,用于存储键值对。Map 可以用来存储数据,快速查找和修改数据。下面是 Go 语言 Map 的使用教程。
什么是 Map?
Map 是一个键值对的集合,它可以存储任意类型的键和值。Map 中的每个键都是唯一的,每个键都对应一个值。
创建 Map
在 Go 语言中,可以使用 make
函数创建一个 Map:
package mainimport "fmt"func main() {m := make(map[string]int)fmt.Println(m)
}
上面的代码创建了一个空的 Map,键类型为字符串,值类型为整数。
添加元素
可以使用索引操作符([]
)来添加元素到 Map 中:
package mainimport "fmt"func main() {m := make(map[string]int)m["apple"] = 5m["banana"] = 3fmt.Println(m)
}
上面的代码将键 "apple"
和值 5
添加到 Map 中,然后将键 "banana"
和值 3
添加到 Map 中。输出结果是一个 Map,包含键 "apple"
和值 5
,键 "banana"
和值 3
。
获取元素
可以使用索引操作符([]
)来获取 Map 中的元素:
package mainimport "fmt"func main() {m := make(map[string]int)m["apple"] = 5m["banana"] = 3fmt.Println(m["apple"]) // Output: 5fmt.Println(m["banana"]) // Output: 3
}
上面的代码获取 Map 中的元素,输出结果是键 "apple"
对应的值 5
和键 "banana"
对应的值 3
。
修改元素
可以使用索引操作符([]
)来修改 Map 中的元素:
package mainimport "fmt"func main() {m := make(map[string]int)m["apple"] = 5m["banana"] = 3m["apple"] = 10fmt.Println(m)
}
上面的代码将键 "apple"
对应的值从 5
修改为 10
。
删除元素
可以使用 delete
函数来删除 Map 中的元素:
package mainimport "fmt"func main() {m := make(map[string]int)m["apple"] = 5m["banana"] = 3delete(m, "banana")fmt.Println(m)
}
上面的代码删除键 "banana"
对应的值。
遍历 Map
可以使用 range
关键字来遍历 Map:
package mainimport "fmt"func main() {m := make(map[string]int)m["apple"] = 5m["banana"] = 3for k, v := range m {fmt.Println(k, v)}
}
上面的代码遍历 Map,输出结果是一个键值对列表,包含键 "apple"
和值 5
,键 "banana"
和值 3
。
Map 的其他方法
Go 语言 Map 还提供了其他方法,例如:
len
函数返回 Map 的长度。get
函数返回 Map 中的元素。set
函数设置 Map 中的元素。delete
函数删除 Map 中的元素。