go的数据类型-复合数据类型-map(一)
导读:在Go语言中,Map是一种无序的键值对集合,也称为字典或关联数组。Map可以用来存储任意类型的值,键必须是支持相等运算符的类型,比如整数、浮点数、字符串、指针等。创建Map 在Go语言中,创建Map可以使用内置的make函数,语法如下:ma...
在Go语言中,Map是一种无序的键值对集合,也称为字典或关联数组。Map可以用来存储任意类型的值,键必须是支持相等运算符的类型,比如整数、浮点数、字符串、指针等。
创建Map 在Go语言中,创建Map可以使用内置的make函数,语法如下:
make(map[KeyType]ValueType)
其中KeyType表示键的类型,ValueType表示值的类型。例如,创建一个存储字符串类型值的Map,可以使用如下代码:
m := make(map[string]string)
向Map中添加元素 向Map中添加元素可以使用下标操作符[],如果Key不存在,则创建一个新的键值对。示例如下:
m := make(map[string]string)
m["name"] = "Alice"
m["age"] = "18"
获取Map中的元素 获取Map中的元素可以使用下标操作符[],如果Key不存在,则返回对应类型的零值。示例如下:
m := make(map[string]string)
m["name"] = "Alice"
m["age"] = "18"
fmt.Println(m["name"])
fmt.Println(m["gender"]) // 返回空字符串
删除Map中的元素 删除Map中的元素可以使用内置的delete函数,语法如下:
delete(map, key)
其中map表示要删除元素的Map,key表示要删除的键。示例如下:
m := make(map[string]string)
m["name"] = "Alice"
m["age"] = "18"
delete(m, "age")
遍历Map 遍历Map可以使用for range循环,示例如下:
m := make(map[string]string)
m["name"] = "Alice"
m["age"] = "18"
for k, v := range m {
fmt.Println(k, v)
}
这里的k表示键,v表示值。for range循环可以遍历Map中的每一个键值对。
Map的长度 Map的长度可以使用内置的len函数来获取,示例如下:
m := make(map[string]string)
m["name"] = "Alice"
m["age"] = "18"
fmt.Println(len(m))
示例代码:
package main
import "fmt"
func main() {
// 创建一个Map
m := make(map[string]string)
// 添加元素
m["name"] = "Alice"
m["age"] = "18"
m["gender"] = "female"
// 获取元素
fmt.Println("name:", m["name"])
fmt.Println("gender:", m["gender"])
// 删除元素
delete(m, "age")
// 遍历Map
for k, v := range m {
fmt.Println(k, v)
}
// Map的长度
fmt.Println("len:", len(m))
}
输出结果:
name: Alice
gender: female
name Alice
gender female
len: 2
在这个示例中,我们创建了一个Map,然后向Map中添加了三个键值对。我们可以使用下标操作符[]来获取Map中的元素。我们还使用了delete函数删除了一个下面我们来看看一些常见的map
操作。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: go的数据类型-复合数据类型-map(一)
本文地址: https://pptw.com/jishu/9242.html