Go-Map

作者: SodaCrush | 来源:发表于2021-03-29 20:13 被阅读0次

go map

golang中的map是一种(无序的)key-value形式的数据结构,类似python中的字典,默认初始值为nil,map是引用类型,必须初始化才能使用。

map创建

直接创建/通过make创建

通过make创建时 make(map[keyType]valueType, [cap]), cap可省略

var userMap = map[String]String{
  "name": "admin",
  "password": "password",
}

codeMap := make(map[String]String)
codeMap["golang"] = "golang"
codeMap["java"] = "java"
codeMap["python"] = "python"
fmt.Printf("Type of codeMap:%T\n", codeMap)

判断key是否存在

map中获取不存在的key时,不会报错,得到的是指定key类型的0值

// 判断ok来确定key是否存在
value, ok := targetMap[key]

删除key

delete(targetMap, key)

遍历map

由于map属于无序类型,在遍历输出时,key-value会无序输出

for k,v := range targetMap{
  fmt.Println(k, v)
}

相关文章

  • Go-map

    本文将简单讲解一下map的常见使用,会把主要的流程描述一下,具体细节不会过多阐述(因为我也没看全,需要遇到问题时再...

  • Go-Map

    go map golang中的map是一种(无序的)key-value形式的数据结构,类似python中的字典,默...

  • Go-Map源码解读

    前言 一般的map都是采用数组+链表的数据结构去进行数据存储,在单节点挂载数据过多时,会考虑将链表转换成树结构来提...

  • 为什么遍历Go-map是无序的

    问题抛出 直接上代码 result: 从上面可以看出,对于每一次遍历结果都不相同。但是有一个规律,就是 从某个ke...

  • go-map源码简单分析(map遍历为什么时随机的)

    GO 中map的底层是如何实现的 首先Go 语言采用的是哈希查找表,并且使用链表解决哈希冲突。 GO的内存模型 先...

网友评论

      本文标题:Go-Map

      本文链接:https://www.haomeiwen.com/subject/lrfihltx.html