我有以下 JSON blob,我正在尝试将其解码为 Go。


["contig", "32", {"a":[33,41,35], "b":[44,34,42]}]

我相信我必须对 JSON 的数据结构进行建模。我尝试使用一个名为的结构Line:


package main


import (

"encoding/json"

"fmt"

)


type Line struct {

    Contig string

    Base   string

    PopMap map[string][]int

}


func main() {

    j := []byte(`["contig", "32", {"a":[33,41,35], "b":[44,34,42]}]`)

    var dat Line

    err := json.Unmarshal(j, &dat)

    fmt.Println(dat)

    fmt.Println(err)

}

我收到以下错误:


{  map[]}

json: cannot unmarshal array into Go value of type main.Line

我究竟做错了什么?