欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

go 語言結構體 json

劉姿婷2年前9瀏覽0評論

Go 語言是一款非常強大的編程語言,其支持多種數據類型,其中之一就是結構體。結構體是將不同屬性組合在一起,形成一個完整的數據類型。在 Go 語言中,我們可以使用 json 格式對結構體進行序列化和反序列化。

type Person struct {
Name    string `json:"name"`
Age     int    `json:"age"`
Address string `json:"address"`
}
func main() {
p := Person{Name: "John", Age: 30, Address: "123 Main St."}
// 序列化為 json 格式
data, err := json.Marshal(p)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(string(data))
// 反序列化 json 格式
var p2 Person
err = json.Unmarshal(data, &p2)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(p2.Name, p2.Age, p2.Address)
}

在上面的代碼中,我們定義了一個名為 Person 的結構體,它包含三個屬性:Name、Age 和 Address。接著,我們定義了一個 main 函數,其中我們創建了一個名為 p 的 Person 對象,并將其序列化為 json 格式。我們使用 json.Marshal 函數將 p 序列化為 json 格式的字節數組,并在控制臺打印出來。

接著,我們將序列化后的字節數組反序列化為變量 p2 中,并在控制臺打印出其屬性的值。我們使用 json.Unmarshal 函數將字節數組反序列化為 p2 變量,并檢查是否有錯誤發生。

上面的代碼演示了如何在 Go 語言中使用結構體和 json 格式實現對象序列化和反序列化。這是一個非常有用的技能,可以幫助您在編寫網絡應用或使用 RESTful API 時有效地傳遞數據。