亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

php小編新一為你解答為什么結(jié)構(gòu)體字段顯示為空。在編程中,結(jié)構(gòu)體是一種自定義的數(shù)據(jù)類型,用于存儲不同類型的數(shù)據(jù)。當結(jié)構(gòu)體字段顯示為空時,可能是因為未正確初始化結(jié)構(gòu)體或者未給字段賦值。另外,也可能是由于字段的作用域問題或者結(jié)構(gòu)體定義的錯誤。要解決這個問題,可以檢查代碼中的初始化部分,確保正確給字段賦值。同時,檢查結(jié)構(gòu)體的定義和作用域,確保其能夠正確訪問到字段的值。

問題內(nèi)容

我正在努力從以下代碼中獲得正確的輸出:

package main

import (
    "encoding/json"
    "fmt"
)

func main() {

    var jsonBlob3 = []byte(`[
        {"name": "Platypus", "spec": "Monotremata", "id":25 },
        {"name": "Quoll",    "spec": "Dasyuromorphia", "id":25 }
    ]`)
    type Animal2 struct {
        name  string
        spec string
        id uint32
    }
    var animals []Animal2
    err := json.Unmarshal(jsonBlob3, &animals)
    if err != nil {
        fmt.Println("error:", err)
    }
    fmt.Printf("%+v\n", animals)
}

登錄后復(fù)制

游樂場片段

打印時結(jié)構(gòu)體字段為空。我確信某個地方有一個愚蠢的錯誤,但我對 Go 仍然是新手,而且我已經(jīng)在這個問題上停留了幾個小時了。請幫忙。

解決方法

這個問題已經(jīng)出現(xiàn)過很多次了。問題是只有導(dǎo)出的字段可以被封送/取消封送。

導(dǎo)出以大寫字母開頭的結(jié)構(gòu)體字段。

type Animal2 struct {
    Name string
    Spec string
    Id   uint32
}

登錄后復(fù)制

在 Go Playground 上嘗試一下。

請注意,JSON 文本包含小寫文本的字段名稱,但 json 包“聰明”足以匹配它們。如果它們完全不同,您可以使用 struct 標簽告訴 json 包如何在 JSON 文本中找到它們(或者如何整理它們),例如:

type Animal2 struct {
    Name string `json:"json_name"`
    Spec string `json:"specification"`
    Id   uint32 `json:"some_custom_id"`
}

登錄后復(fù)制

分享到:
標簽:作用域
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定