map是什么?

map是一种无序的键值对类型的数据结构,数组使用下标来访问数组里的元素,下标是int类型的,

而map的键可以使用其它类型。可以想象map长这样(并非底层数据结构):

map里存放了像("apple",23)这样的键值对,"apple"被称为键(key),23被称为值(value)。通过key就能找到值。

 

声明map

由于map有键和值,所以声明map需要填两种数据类型(当然两种数据类型可以是一样的),如:

var map名 map[键类型] 值类型

其中使用了关键字map.而且值得注意的是值类型没有用[]包起来。

 

创建一个map

要用map来存放数据光声明是不够的,还需要创建。和切片一样使用内置函数make来创建。

如:

myMap := make(map[string] int)

另一种方式创建map是使用字面量:

例:

myMap := map[string]int{ "a":1, "b": 2 }

{}里的是字面量,键和值之间用冒号隔开,键值对之间用逗号隔开。

 

访问map

开始的时候已经说过了map的访问和数组类似,只不过[]里的是键。

例:

myMap := make(map[string] float64)

myMap["apple"] = 2.3

当map中不存在“apple”时则添加一个"apple"的键值对,

若map中已存在 “apple”则修改"apple"的值。

 

删除map中的元素

要删除map中的元素,需要使用内置函数delete,传入map和要删除的键。

例:

delete(myMap,"apple")

 

特别说明:

若后续发现文章中的错误或者对文章内容补充将只在我的博客中进行更新。

我的博客主要记录编程中学到的知识、踩过的坑以及一些莫名其妙的想法。

欢迎来踩我的独立博客: fearlazy。