dqaq59269 2017-11-15 22:12
浏览 191

如何在GO中的嵌套json结构中初始化值? [重复]

This question already has an answer here:

I have this struct right now

type ServiceStruct struct {
      Name     string `json:"name"`
      DataStruct struct {
          ID    string `json:"id"`
          Size  string `json:"size"`
     }
}

But im not sure how to assign values to the elements inside this struct. Specially the DataStruct inside the ServiceStruct

</div>
  • 写回答

2条回答 默认 最新

  • dtujfmfs06058 2017-11-15 22:24
    关注

    You can either use an anonymous struct literal (which requires copy-pasting the type of DataStruct) or assign values to individual fields using =.

    package main
    
    import (
        "fmt"
    )
    
    type ServiceStruct struct {
        Name       string `json:"name"`
        DataStruct struct {
            ID   string `json:"id"`
            Size string `json:"size"`
        }
    }
    
    func main() {
        s1 := ServiceStruct{
            Name: "foo",
            DataStruct: struct {
                ID   string `json:"id"`
                Size string `json:"size"`
            }{
                ID:   "bar",
                Size: "100",
            },
        }
    
        s2 := ServiceStruct{
            Name: "foo",
        }
        s2.DataStruct.ID = "bar"
        s2.DataStruct.Size = "100"
    
        fmt.Println(s1)
        fmt.Println(s2)
    
        // Output:
        // {foo {bar 100}}
        // {foo {bar 100}}
    }
    

    Alternatively, consider giving the type of DataStruct a name so you can refer to it in the struct literal instead of copy-pasting (which is not recommended).

    评论

报告相同问题?

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图