• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Go-Map集合

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

概述

Map 集合是无序的 key-value 数据结构。

Map 集合中的 key / value 可以是任意类型,但所有的 key 必须属于同一数据类型,所有的 value 必须属于同一数据类型,key 和 value 的数据类型可以不相同。
声明 Map

 

   //demo_14.go    
    package main    
    import (    
        "fmt"    
    )    
    func main() {    
        var p1 map[int]string    
        p1 = make(map[int]string)    
        p1[1] = "Tom"    
        fmt.Println("p1 :", p1)    
        var p2 map[int]string = map[int]string{}    
        p2[1] = "Tom"    
        fmt.Println("p2 :", p2)    
        var p3 map[int]string = make(map[int]string)    
        p3[1] = "Tom"    
        fmt.Println("p3 :", p3)    
        p4 := map[int]string{}    
        p4[1] = "Tom"    
        fmt.Println("p4 :", p4)    
        p5 := make(map[int]string)    
        p5[1] = "Tom"    
        fmt.Println("p5 :", p5)    
        p6 := map[int]string{    
            1 : "Tom",    
        }    
        fmt.Println("p6 :", p6)    
    }

 


运行结果:

生成 JSON

 

  //demo_15.go    
    package main    
    import (    
        "encoding/json"    
        "fmt"    
    )    
    func main() {    
        res := make(map[string]interface{})    
        res["code"] = 200    
        res["msg"]  = "success"    
        res["data"] = map[string]interface{}{    
            "username" : "Tom",    
            "age"      : "30",    
            "hobby"    : []string{"读书","爬山"},    
        }    
        fmt.Println("map data :", res)    
        //序列化    
        jsons, errs := json.Marshal(res)    
        if errs != nil {    
            fmt.Println("json marshal error:", errs)    
        }    
        fmt.Println("")    
        fmt.Println("--- map to json ---")    
        fmt.Println("json data :", string(jsons))    
        //反序列化    
        res2 := make(map[string]interface{})    
        errs = json.Unmarshal([]byte(jsons), &res2)    
        if errs != nil {    
            fmt.Println("json marshal error:", errs)    
        }    
        fmt.Println("")    
        fmt.Println("--- json to map ---")    
        fmt.Println("map data :", res2)    
    }

 


运行结果:

编辑和删除

 

  //demo_16.go    
    package main    
    import (    
        "fmt"    
    )    
    func main() {    
        person := map[int]string{    
            1 : "Tom",    
            2 : "Aaron",    
            3 : "John",    
        }    
        fmt.Println("data :",person)    
        delete(person, 2)    
        fmt.Println("data :",person)    
        person[2] = "Jack"    
        person[3] = "Kevin"    
        fmt.Println("data :",person)    
    }

 


运行结果:




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Go语言_并发篇发布时间:2022-07-10
下一篇:
9.4Go数据格式发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap