map
key:value

map最重要的一点是通过key来快速检索数据,key类似于索引,指向数据的值

map是引用类型

声明

可以使用内键函数make也可以使用map关键字来声明

//声明变量,默认map值是nil
var map_variable map[key]value
//make声明
map_variable = make(map[key]value)

Demo1

m1使用make初始化,m2批量赋值

m1 := make(map[string]string)
m1["name"] = "Sentiemnt"
m1["age"] = "18"
fmt.Printf("m1:%v\n", m1)

m2 := map[string]string{
   "name": "Tana",
   "age":  "20",
}
fmt.Printf("m2:%v", m2)

结果:

m1:map[age:18 name:Sentiemnt]
m2:map[age:20 name:Tana]

Demo2

可以根据索引输出

m1 := make(map[string]string)
m1["name"] = "Sentiemnt"
m1["age"] = "18"
fmt.Printf("m1:%v", m1["name"])

结果:

m1:Sentiemnt

Demo03

其实再根据索引赋值时,会产生两个值,一个是值本身,另一个是bool类型的值来判断本索引是否存在

m1 := make(map[string]string)
m1["name"] = "Sentiemnt"
m1["age"] = "18"
value, b := m1["age"]
fmt.Println(value, b)
agetrue

结果:

18 true
循环
forr
var m1 = map[string]string{"name": "Sentiment", "age": "18"}
for key, value := range m1 {
  fmt.Println(key, value)
	}
}

结果:

name Sentiment
age 18