亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 Go map 創建對象的 JSON 數組?

如何使用 Go map 創建對象的 JSON 數組?

Go
滄海一幻覺 2023-05-15 10:23:25
我需要使用地圖創建一個 JSON 數組。package mainimport "fmt"func main(){    id := [5]string{"1","2","3","4","5"}    name := [5]string{"A","B","C","D","E"}    parseData := make(map[string]string)    for counter,_ := range id {        parseData["id"] = id[counter]        parseData["name"] = name[counter]        fmt.Println(parseData)    }}我目前的輸出:map[id:1 name:A]map[id:2 name:B]map[id:3 name:C]map[id:4 name:D]map[id:5 name:E]我需要如下所示的 JSON 輸出:[{id:1, name:A},{id:2, name:B},{id:3, name:C},{id:4, name:D},{id:5, name:E}]我知道使用 map 的基礎知識它是用于鍵:值對的字典。如何使用 map 實現 JSON 輸出。
查看完整描述

2 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

要創建 through map 數組JSON,您需要創建一個map作為slice單個 map 而另一個只是單個 map,然后在單個 map 中一個一個地賦值,然后將其附加到 slice of map 中,如下面的代碼所示:


package main


import (

    "fmt"

    "encoding/json"

)


func main(){

    id := [5]string{"1","2","3","4","5"}

    name := [5]string{"A","B","C","D","E"}


    parseData := make([]map[string]interface{}, 0, 0)


    for counter,_ := range id {

        var singleMap = make(map[string]interface{})

        singleMap["id"] = id[counter]

        singleMap["name"] = name[counter]

        parseData = append(parseData, singleMap)

    }

    b, _:= json.Marshal(parseData)

    fmt.Println(string(b))

}

你也可以在這里測試

它打印JSON為:

[{"id":"1","name":"A"},

{"id":"2","name":"B"},

{"id":"3","name":"C"},

{"id":"4","name":"D"},

{"id":"5","name":"E"}]


查看完整回答
反對 回復 2023-05-15
?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

對我來說,這更像是一組對象。您可以像這樣獲得所需的輸出:


type data struct {

    Id string

    Name string

}


func main(){

    id := [5]string{"1","2","3","4","5"}

    name := [5]string{"A","B","C","D","E"}

    var parsedData []data


    for counter := range id {

        parsedData = append(parsedData, data{Name: name[counter], Id: id[counter]})

    }


    bytes, _ := json.Marshal(parsedData)

    fmt.Print(string(bytes))

}

輸出應如下所示:


[

 {"Id":"1","Name":"A"},

 {"Id":"2","Name":"B"},

 {"Id":"3","Name":"C"},

 {"Id":"4","Name":"D"},

 {"Id":"5","Name":"E"}

]


查看完整回答
反對 回復 2023-05-15
  • 2 回答
  • 0 關注
  • 167 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號