在Go中关于Map的使用

/ 默认分类 / 没有评论 / 13浏览

Map的使用

一:map集合的声明与创建

1: 创建一个Mapvar greeting map[string]string
这样创建的Map集合相当于声明了变量为赋值
greeting == nil 这时判断输出结果回为true

var greeting = map[string]string
//true
fmt.Prinltn(greeting == nil)

2:方式二:通过变量声明赋值符号:= 创建

greeting := map[string]string{}
//false
fmt.Prinltn(greeting == nil)

3: 方式三:通过使用make内建函数创建

greeting := make(map[string]string)
//false 
fmt.Prinltn(greeting == nil)

二:集合中的元素添加与删除

​ 对于集合来说,必不可少的就是对于集合元素的操作删除与新增

对集合进行新增与更新

在go对于要对map 集合元素新增直接采用variableMapName[key]=value 语法对元素进行新增

这里的key对于集合来水是唯一的,如果重复对同一个key进行赋值,会将之前保存的值进行覆盖

简单来说,你刚找的对象,立马换了一个新的,开心不

   girlMap:=map[string]string{
   "zero":"小青",
   "one":"小黄",
   "two":"小紫",
   "three":"小明"
   }
 //对map集合元素新增
  girlMap["four"]="包子" 
  girlMap["five"]="饺子" 
//原本你的对象是可爱的小黄菇凉,这是变成了`抠脚大汉`刺激不
 girlMap["two"]="小黑"

alt

以上为map集合的元素增加与修改基本简单操作

元素的删除

在go中要对一个元素删除需要使用到func delete(m map[Type]Type1, key Type) 内建函函数,这几简单的里说就是:参数一:map集合变量,参数二:key值,需要删除集合中的元素key值

   girlMap:=map[string]string{
   "zero":"小青",
   "one":"小黄",
   "two":"小紫",
   "three":"小明"}

//这时一个汉子不应该出现在girlMap集合中,所以我们要删除他 delete(girlMap,"three")

//go中为我们进行了特殊的数据,当我们删除一个不存在的元素时,也不会有错误产生 delete(girlMap,"666")

判断元素是否存在

在go中在我们获mapName[key]获取元素内容为我们提供给了一个bool值,

val, exist :=mapName[0]如果元素不存在exist结果为 false

   girlMap:=map[string]string{
   "zero":"小青",
   "one":"小黄",
   "two":"小紫"}

if val,exist:= girlMap["包子"],exist{ fmt.Pringln("欧糟糕,你对象不见了") }else{ fmt.Pringln("天呐!这都被你找到了") } //综上所述,所以你的对象不见了

对集合元素的遍历

对于map中的集合的遍历我们借助go提供range关键字

girlMap := map [string] string{
   "zero":"小青",
   "one":"小黄",
   "two":"小紫"}

for key , val := range girlMap{ fmt.Println(key, " - ", val) }

//结果输出 //zero = 小青 //one = 小黄 //two = 小紫