如何在golang中的struct中追加一个切片

问题描述 投票:0回答:1

将项目添加到切片或数组的Go语言语法是什么?

package main

import "fmt"

type Car struct{
    Code string
    Brand string
    Type string
    Price int 
    Supply int
}

var Stock []Car

func init()  {
    Stock = []Car{
        Car{
            Code:"TOY13EMTAV",
            Brand:"Toyota Avanza",
            Type:"1.3 E M/T",
            Price:191100000,
            Supply:2,
        },
        Car{
            Code:"TOY15GMTAV",
            Brand:"Toyota Avanza",
            Type:"1.5 G M/T",
            Price:221250000,
            Supply:3,
        },
        Car{
            Code:"TOY15GCVTYAR",
            Brand:"Toyota Yaris",
            Type:"G CVT",
            Price:257650000,
            Supply:5,
        },
    }
}
arrays go struct slice
1个回答
1
投票

可以使用append内置方法将数据添加到切片。要附加到切片,请将切片作为参数传递,然后将新的切片分配回原始切片。如果您只是在学习语言,那么为什么必须执行此操作的细节并不重要,但只要说出它可以使事情变得更加有效就足够了。例如:

append

如果您想更好地了解Stock = append(Stock, Car{ Code: "newcar", // … }) ,也可以在附加this section时从Effective Go中找到append

这里是示例的修改版本,可以在Go操场上运行。我对代码进行了其他一些小的更改,这些更改对于新开发者学习而言可能有用也可能无效:

https://play.golang.org/p/AqlrL47pImw

© www.soinside.com 2019 - 2024. All rights reserved.