mirror of
https://gitee.com/shikong-sk/golang-study
synced 2025-02-23 07:22:16 +08:00
docs: Map 键值对
This commit is contained in:
parent
163ffa5fa9
commit
3e4bc51775
33
base/map/main.go
Normal file
33
base/map/main.go
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
// map 为引用类型 必须 初始化后 才能使用
|
||||||
|
// map[键类型]值类型
|
||||||
|
m1 := make(map[string]string, 5)
|
||||||
|
|
||||||
|
m1["name"] = "shikong"
|
||||||
|
m1["age"] = "22"
|
||||||
|
|
||||||
|
fmt.Printf("m1 => %T %+v\n", m1, m1)
|
||||||
|
|
||||||
|
// 第一个变量接收 对应key 的 value值
|
||||||
|
// 第二个变量接收 一个布尔值 若 key存在 则为 true 否则为 false
|
||||||
|
val, ok := m1["test"]
|
||||||
|
fmt.Printf("val: %#v ok: %v\n", val, ok)
|
||||||
|
|
||||||
|
fmt.Println("=========================================================")
|
||||||
|
|
||||||
|
// map 的 遍历
|
||||||
|
for k, v := range m1 {
|
||||||
|
fmt.Printf("k: %s v: %s\n", k, v)
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Println("=========================================================")
|
||||||
|
|
||||||
|
// 删除
|
||||||
|
// delete 按照指定的键将 元素 从 map 中删除 若 map 为 nil 或 无此元素, delete不进行操作
|
||||||
|
delete(m1, "name")
|
||||||
|
fmt.Printf("m1 => %T %+v\n", m1, m1)
|
||||||
|
}
|
25
base/map/slice/main.go
Normal file
25
base/map/slice/main.go
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
// 元素 类型为 map 的 slice
|
||||||
|
// 此处 仅 初始化了 切片 未初始化 map
|
||||||
|
var s1 = make([]map[string]string, 5, 10)
|
||||||
|
fmt.Printf("s1 => %T %+v\n", s1, s1)
|
||||||
|
|
||||||
|
// 需 初始化 map
|
||||||
|
s1[0] = make(map[string]string, 1)
|
||||||
|
// 再 对 map 进行操作
|
||||||
|
s1[0]["name"] = "shikong"
|
||||||
|
fmt.Printf("s1 => %T %+v\n", s1, s1)
|
||||||
|
|
||||||
|
fmt.Println("=========================================================")
|
||||||
|
|
||||||
|
// 值为 slice 的 map
|
||||||
|
var m1 = make(map[string][]string, 5)
|
||||||
|
fmt.Printf("m1 => %T %+v\n", m1, m1)
|
||||||
|
|
||||||
|
m1["asia"] = []string{"China", "China/HongKong", "China/Macao", "China/Taiwan", "Japan"}
|
||||||
|
fmt.Printf("m1 => %T %+v\n", m1, m1)
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user