1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
// 声明 var <name> map[keyType]valueType var a map[int]string var a map[string]string var a map[int]map[int]string
// 声明不会分配内存 每个map需要使用make进行初始化 a = make(map[int]string)
// 当map的value为map时,每个map都需要初始化 var student map[int]map[string]string student = make(map[int]map[string]string) student[0] = make(map[string]string,3) student[0][name] = 'guozijing' student[0][sex] = 'male' student[0][address] = 'beijing'
student[1] = make(map[string]string,3)
// map的删除 delete(name,key)
// 删除一整个map 遍历删除 或者重新初始化 name = make(map[int]string)
// map的查找 var , ok := name[key] if ok { fmt.Println('ok') } else { fmt.Println('no') }
// map的遍历 var student map[int]map[string]string student = make(map[int]map[string]string) student[0] = make(map[string]string,3) student[0][name] = 'guozijing' student[0][sex] = 'male' student[0][address] = 'beijing'
student[1] = make(map[string]string,3) student[1][name] = 'guozijing' student[1][sex] = 'male' student[1][address] = 'beijing'
for k1,v1 := range student { for k2,v2 := range v2 { fmt.Println('%vt %vt %vn', k1, k2, v2) } }
// map的切片 package main import "fmt"
func main() { var student []map[string]string student = make([]map[string]string, 2) if student[0] == nil { student[0] = make(map[string]string,2) student[0]['name'] = 'guozijing' student[0]['sex'] = 'male' } if student[1] == nil { student[1] = make(map[string]string) student[1]['name'] = 'guojingfeng' student[1]['sex'] = 'male' } // append studentA := map[string]string { 'name' : 'Jason', 'sex' : 'male' } append(student, studentA) fmt.Println(student) }
// map按照key排序输出value package main import "fmt"
func main() { m := make(map[int]int, 10) m[1] = 12 m[10] = 20 m[3] = 21 m[7] = 12
var key []int for k, _:= range m { append(key, k) } sort.Ints(key)
for _, k := range key { fmt.Println(m[key]) } }
|
近期评论