zoukankan      html  css  js  c++  java
  • map[string]interface{} demo

    package main
    
    import (
        "encoding/json"
        "fmt"
        "reflect"
    )
    
    func demo1() {
        txt := `{"a":1,"b":2,"c":[{"name":"1","group":"2"},{"name":"3","group":"4"}]}`
        var m map[string]interface{}
        if err := json.Unmarshal([]byte(txt), &m); err != nil {
            panic(err)
        }   
        for _, v := range m["c"].([]interface{}) {
            fmt.Println(v)
        }   
    }
    
    func demo2() {
        txt := `{"a":1,"b":2,"c":[{"name":"1","group":"2"},{"name":"3","group":"4"}]}`
        var m map[string]interface{}
        if err := json.Unmarshal([]byte(txt), &m); err != nil {
            panic(err)
        }   
        v := reflect.ValueOf(m["c"])
        count := v.Len()
        for i := 0; i < count; i++ {
            fmt.Println(v.Index(i))
        }
    }
    
    func demo_all() {
        txt := `{"a":1,"b":2,"c":[{"name":"1","group":"2"},{"name":"3","group":"4"}]}`
        var m map[string]interface{}
        if err := json.Unmarshal([]byte(txt), &m); err != nil {
            panic(err)
        }
        for _, v := range m {
            fmt.Println(v)
        }
    }
    
    func main() {
        demo1()
        fmt.Println("====================")
        demo2()
        fmt.Println("====================")
        demo_all()
    }

    运行结果:

    [root@wangjq 333]# go run zzz.go 
    map[name:1 group:2]
    map[name:3 group:4]
    ====================
    map[group:2 name:1]
    map[name:3 group:4]
    ====================
    1
    2
    [map[name:1 group:2] map[name:3 group:4]]
  • 相关阅读:
    pycharm基本设置
    pycharm破解
    jupyter
    gpu监控收藏
    监控收藏
    k8s 亲和性和反亲和性 以及污点和容忍
    通过服务器 远程管理卡进行装机
    7.11实习培训日志-Git Linux
    ## HashTable和HashMap的区别
    springboot2 -广播式WebSocket
  • 原文地址:https://www.cnblogs.com/wangjq19920210/p/11643140.html
Copyright © 2011-2022 走看看