Go语言map的使用

  • 初始化map

    // 第一种声明方式
    var user_profile = map[string]string{
        "name":"wuxiaoshi",
        "address":"北京市朝阳区"
    }
    // 也可以这样声明,只是变量声明的一种简洁方式
    user_profile1 := map[string]string{
        "qq": "1045216729"
    }
    
    // 第二种声明方式
    user_profile3 := make(map[string]string)
    user_profile3["emai"] = "imock@sina.com"
    
  • 添加键值对

    user_profile3 := make(map[string]string)
    user_profile3["emai"] = "imock@sina.com"
    
  • 删除键值对

    // 没有返回值
    delete(user_profile,"name")
    
  • 清空map

    // 只有将变量重新赋值一个空的map
    var user_profile = map[string]string
    
  • 判断键是否存在

    // 判断map中有没有 avatar 字段
    if avatar,exists := user_profile["avatar"];exists{
        fmt.Printf("avatar字段存在,值为:%s",avatar)
    }else{
        fmt.Println("avatar字段不存在!")
    }
    
  • map遍历

    // 获取map的键和值
    for key,val := range user_profile{
        fmt.Printf("key:%s, val:%s\n",key,val)
    }
    
    // 获取键的方式
    for key := range user_profile{
        fmt.Println(key)
    }
    // 如果不嫌麻烦的话,也可以这样
    for key,_ := range user_profile{
         fmt.Println(key)
    }
    
    // 获取值
    for _,val := range user_profile{
        fmt.Println(val)
    }
    
posted @   巫小诗  阅读(210)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示