数组 – 在golang的嵌套结构体内初始化一个结构体数组

前端之家收集整理的这篇文章主要介绍了数组 – 在golang的嵌套结构体内初始化一个结构体数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道如何在嵌套结构体内定义和初始化结构体数组,例如:
type State struct {
    id string `json:"id" bson:"id"`
    Cities 
}

type City struct {
    id string `json:"id" bson:"id"`
}

type Cities struct {
    cities []City
}

现在我如何初始化这样的结构,如果有人对于如何创建结构本身有不同的想法。

谢谢

在你的情况下,速记字面语法是:
state := State {
    id: "CA",Cities:  Cities{
        []City {
            {"SF"},},}

或者如果不想要键,则缩短:文字的值语法:

state := State {
    "CA",Cities{
        []City {
            {"SF"},}

如果城市不包含[]城市以外的其他任何东西,只需使用一片城市。这将导致一个稍微较短的语法,并删除不必要的(可能)图层:

type State struct {
    id string `json:"id" bson:"id"`
    Cities []City
}

type City struct {
    id string `json:"id" bson:"id"`
}


func main(){
    state := State {
        id: "CA",Cities:  []City{
             {"SF"},}

    fmt.Println(state)
}

猜你在找的Go相关文章