package main
import "fmt"
/**
map 类型: map[K]V k表示键,v表示值
是个HashMap k是无序
k的类型:除了 slice, map , func 其余都可以
*/
func main() {
// 定义一个 map 类型
m := map[string]string {
"name":"ccmouser",
"course":"golang",
}
fmt.Println("m = ", m)
fmt.Println("m[\"name\"]", m["name"])
// 创建一个map, string类型的key, map[string]string 作为值
mt := make(map[string]map[string]string)
fmt.Println("map也可以做值V", mt)
// 通过 make 分配
m2 := make(map[string]int) // m2 == empty map
var m3 map[string]int // m3 == nil
fmt.Println("m2 = ", m2)
fmt.Println("m3 = ", m3)
// 添加值
m["age"]="21"
// 遍历的时候不保证顺序
for k, v := range m {
fmt.Println("k = ",k ,"v = " , v)
}
// name, ok := m["name"]
// ok 返回的就是 true 和 false
// 判断 map 的值存不存在
if name, ok := m["name"]; ok {
fmt.Println(name)
} else {
fmt.Println("这个key不存在!")
}
// 删除
delete(m, "name")
}
网友评论