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

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

json.Marshal(struct) 返回“{}”

json.Marshal(struct) 返回“{}”

Go
翻閱古今 2021-08-23 15:56:57
type TestObject struct {    kind string `json:"kind"`    id   string `json:"id, omitempty"`    name  string `json:"name"`    email string `json:"email"`}func TestCreateSingleItemResponse(t *testing.T) {    testObject := new(TestObject)    testObject.kind = "TestObject"    testObject.id = "f73h5jf8"    testObject.name = "Yuri Gagarin"    testObject.email = "[email protected]"    fmt.Println(testObject)    b, err := json.Marshal(testObject)    if err != nil {        fmt.Println(err)    }    fmt.Println(string(b[:]))}這是輸出:[ `go test -test.run="^TestCreateSingleItemResponse$"` | done: 2.195666095s ]    {TestObject f73h5jf8 Yuri Gagarin [email protected]}    {}    PASS為什么 JSON 本質上是空的?
查看完整描述

3 回答

?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

當第一個字母大寫時,標識符對您要使用的任何代碼段都是公開的。

當第一個字母是小寫時,標識符是私有的,只能在它聲明的包內訪問。

例子


 var aName // private


 var BigBro // public (exported)


 var 123abc // illegal


 func (p *Person) SetEmail(email string) {  // public because SetEmail() function starts with upper case

    p.email = email

 }


 func (p Person) email() string { // private because email() function starts with lower case

    return p.email

 }


查看完整回答
反對 回復 2021-08-23
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

在 golang


在 struct 中的第一個字母必須大寫,例如。電話號碼 -> 電話號碼


====== 添加細節


首先,我嘗試這樣編碼


type Questions struct {

    id           string

    questionDesc string

    questionID   string

    ans          string

    choices      struct {

        choice1 string

        choice2 string

        choice3 string

        choice4 string

    }

}

golang compile 不是錯誤并且不顯示警告。但響應是空的,因為某事


之后,我搜索谷歌找到了這篇文章


結構類型和結構類型文字 文章然后...我嘗試編輯代碼。


//Questions map field name like database

type Questions struct {

    ID           string

    QuestionDesc string

    QuestionID   string

    Ans          string

    Choices      struct {

        Choice1 string

        Choice2 string

        Choice3 string

        Choice4 string

    }

}

是工作。


希望得到幫助。


查看完整回答
反對 回復 2021-08-23
  • 3 回答
  • 0 關注
  • 214 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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