发布时间:2024-12-23 04:03:15
Golang中的map是一种集合类型,它存储了一系列键值对。每个键都是唯一的,而值可以重复。
Golang中声明一个map的语法如下:
var myMap map[keyType]valueType
其中keyType和valueType分别代表键的类型和值的类型。例如:
var employeeSalary map[string]int
另一种初始化方式是使用make()函数:
myMap := make(map[keyType]valueType)
例如:
employeeSalary := make(map[string]int)
要在map中添加键值对,可以使用以下语法:
myMap[key] = value
如果键已经存在,则该键对应的值会被更新,否则会插入新的键值对。
例如:
employeeSalary["John"] = 50000
可以使用以下语法来获取map中特定键的值:
value := myMap[key]
如果键不存在,返回的值为该值类型的零值(zero value),并且还可以通过下面的方法来判断一个键是否存在:
value, ok := myMap[key]
例如:
salary, ok := employeeSalary["John"]
如果键存在,salary会被赋值为对应的值,而ok会被赋值为true;否则salary会被赋值为0,而ok会被赋值为false。
Golang中可以使用for-range语句来遍历map:
for key, value := range myMap {
// do something with key and value
}
例如:
for name, salary := range employeeSalary {
fmt.Println(name, "earns", salary)
}
可以使用delete()函数从map中删除某个键值对:
delete(myMap, key)
例如:
delete(employeeSalary, "John")
可以使用len()函数来获取map中键值对的数量:
length := len(myMap)
例如:
count := len(employeeSalary)
通过这篇文章,我们学习了如何在Golang中使用map进行键值对的存储和访问。