马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
1. Map数据范例
Map布局是键值对的聚集,此中每个键都是唯一的,而且每个键都映射到一个值。
Map是无序的,即元素的次序是不确定的。
Map的初始值是nil,不能直接利用,必要利用make函数来创建一个Map。
Map布局为引用数据范例
1.1. Map声明和初始化
- // Map的声明,其中keyType是键的类型,valueType是值的类型
- // 1. 先声明 var 变量名 map[keyType]valueType
- var map1 map[string]int
- // 2. 使用make函数来创建一个Map
- map1 = make(map[string]int)
- map1["a"] = 1
- map1["b"] = 2
- map1["c"] = 3
- // 2. 声明即创建 ,并赋值 var 变量名 = make(map[keyType]valueType)
- var map2 = make(map[string]int)
- map2["a"] = 4
- map2["b"] = 5
- map2["c"] = 6
- // 3. 简短声明 变量名 := map[keyType]valueType
- map3 := map[string]int{
-
- }
- map3["a"] = 7
- map3["b"] = 8
- map3["c"] = 9
- // 4. 声明即创建,并赋值
- var map4 = map[string]int{
-
- "a": 10, "b": 11, "c": 12}
- // 5. 简短声明,并赋值
- map5 := map[string]int{
-
- "a": 13, "b": 14, "c": 15}
- // 6. 声明一个map和定义一个map,其值的区别
- var map6 map[string]int
- var map7 = map[string]int{
-
- }
- fmt.Printf("map1 类型:%T 值:%v map1 是否为 nil %v \n", map1, map1, map1 == nil)
- fmt.Printf("map2 类型:%T 值:%v map2 是否为 nil %v \n", map2, map2, map2 == nil)
- fmt.Printf("map3 类型:%T 值:%v map3 是否为 nil %v \n", map3, map3, map3 == nil)
- fmt.Printf("map4 类型:%T 值:%v map4 是否为 nil %v \n", map4, map4
复制代码 |