美文网首页
八.Go哈希字典map

八.Go哈希字典map

作者: kaxi4it | 来源:发表于2017-06-19 16:35 被阅读0次

Map

  • map以key-value的形式存储
  • key必须是支持==或者!=比较运算的类型,不能是函数、map或slice
  • map查找比线性搜索快很多,但比使用索引访问数据的类型慢
  • map使用make()创建,支持:=这种方式
  • make(map[key类型]value类型)
  • 超出容量时会自动扩容,使用len()获取元素个数
  • 简直对不存在时,自动添加,使用delete()删除某键值对
func main() {
    m1 := make(map[int]string)
    m1[0] = "OK"
    fmt.Println(m1)
    delete(m1, 0)
    fmt.Println(m1)
}
  • map嵌套map时,make只会初始化第一层map,第二层map也需要单独初始化
func main() {
    m1 := make(map[int]map[int]string)
    a, ok := m1[2][1]
    if !ok {
        m1[2] = make(map[int]string)
    }
    m1[2][1] = "value"
    a, ok = m1[2][1]
    //value true
    fmt.Println(a, ok)
}
  • 使用 for range 对map和slice进行迭代操作
func main() {
    m1 := make(map[int]string)
    for i := 0; i < 10; i++ {
        m1[i] = strconv.Itoa(i)
    }
    for i := range m1 {
        fmt.Println(m1[i])
    }
    fmt.Println(m1)
}

直通车

一.Go开发工具及命令
二.Go编程基础知识
三.Go的类型与变量
四.Go常量与运算符
五.Go控制语句
六.Go数组
七.Go切片slice
八.Go哈希字典map
九.Go函数func
十.Go结构struct

相关文章

  • 八.Go哈希字典map

    Map map以key-value的形式存储 key必须是支持==或者!=比较运算的类型,不能是函数、map或sl...

  • Golang之Map源码

    引用 深入 Go 的 Map 使用和实现原理 哈希表 深度解密Go语言之map Golang map 的底层实现 使用

  • 05.基本数据类型--字典

    一、概述 1). 字典的由来-哈希 哈希:一般叫做"散列",类比Java中的Map。 2). 字典特性: key-...

  • go语言坑之并发访问map

    go提供了一种叫map的数据结构,可以翻译成映射,对应于其他语言的字典、哈希表。借助map,可以定义一个键和值,然...

  • golang map的底层实现

    golang map的底层实现 粗略的讲,Go语言中map采用的是哈希查找表,由一个key通过哈希函数得到哈希值,...

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

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

  • 第九章:Go语言映射类型map

    1. map概述 Go语言中map字典类型时散列表(hash table)的实现,因为Go语言中将map中的每个键...

  • 哈希

    哈希,也叫字典、map、关联数组。在redis中,哈希类型,是指键值本身,又是一个键值对结构。哈希类型的映射关系叫...

  • 08 map(字典/哈希) 迭代

    类似其它语言中的哈希表或者字典,以key-value形式存储数据Key必须是支持==或!=比较运算的类型,不可以是...

  • 字典(dict)

    字典(dict)在其他语言中被称作哈希映射(hash map)或者相关数组(associative arrays)...

网友评论

      本文标题:八.Go哈希字典map

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