如何在golang中编写带有嵌套递归数据的结构

我有如下数据


{

    "cars": {

        "toyota": [

            "sedan",

            "pickup"

        ],

        "honda": [

            "sedan",

            "couple",

            "pickup"

        ]

                ....

    }

}

该列表可能会继续增长。我试图找到一个正确的结构来服务器数据并返回到 http 响应编写器。


我拥有的结构。


type Autos struct {

    Cars struct {

        Toyota []string `json:"toyota"`

        Honda  []string `json:"honda"`

    } `json:"cars"`

}

但是上面的结构体已经预定义了“Toyota”“Honda”


我正在寻找一种仅使用一个或两个结构来表示数据结构的方法。提前致谢。



狐的传说
浏览 78回答 1
1回答

qq_笑_17

你可以做:type Autos struct {    Cars map[string][]string `json:"cars"`}这是一个完整的工作示例,打印“coupe”:package mainimport (    "encoding/json")type Autos struct {    Cars map[string][]string `json:"cars"`}func main() {    x := `{    "cars": {        "toyota": [            "sedan",            "pickup"        ],        "honda": [            "sedan",            "coupe",            "pickup"        ]    }}`    var a Autos    err := json.Unmarshal([]byte(x), &a)    if err != nil {        panic(err)    }    println(a.Cars["honda"][1])}游乐场链接
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go