教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 golang-Map

golang-Map

发布时间:2021-04-18   编辑:jiaochengji.com
教程集为您提供golang-Map等资源,欢迎您收藏本站,我们将为您提供最新的golang-Map资源

map

  1. 声明map

        1. var m map[int]string; m=map[int]string{} -> 完成初始化  // [int]代表key的类型,string代表value的类型
         2. m := make(map[int]string)
         3. map字面量的语法,同时还可以指定一些最初的key/value
            -> 
            ages := map[string]int{
                "alice":31,
                "charlie":34
            }
    
            相当于:
            ages := make(map[string]int)
            ages["alice"] = 31
            ages["charlie"] = 34
    
  2. 删除键值

    delete(m,1)  // m是map对象,1是键名
  3. 判断键存在不存在

    a,ok := m[2][1] // 此时ok=false(如果该位置元素不存在)
  4. 迭代

    for k,v := range m{}
  5. 排序

    import sort
    sort.Ints(s)
  6. 取值

    • fmt.Println(ages[“alice”])
    • 取值操作是安全的,即使key不存在也没关系,如果查找失败,则返回value对应的零值。
    • map中的元素并不是一个变量,因此不能对map的元素进行取址操作(map可能随着元素数量的增长而重新分配更大的内存空间,从而导致之前的地址无效)
    • 遍历取 ->

      for name,age := ages{
            fmt.Println(name,age)
      }
      
  7. 迭代顺序是不确定的,每次的遍历顺序都不相同,如果要求按顺序遍历,则必须显式对key进行排序,可以用sort包的strings函数对字符串slice进行排序

  8. map类型的零值是nil -> map[] ,也就是引用任何哈希表
  9. 要向map存数据前必须先创建map
到此这篇关于“golang-Map”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
请教一个interface格式解析的问题
golang map 赋值 修改 陷阱
Golang从入门到放弃200618--Map(1)Map的初始化和基本操作
golang中map声明及初始化
golang之map详解
golang map中结构体元素是无法取地址的
golang map笔记
Golang map切片和map的排序
Golang 空map和未初始化map注意事项
golang map

[关闭]
~ ~