Go语言的内建函数 append() 可以为切片动态添加元素。不过需要注意的是,在使用 append() 函数为切片动态添加元素时,如果空间不足以容纳足够多的元素,切片就会进行“扩容”,此时新切片的长度会发生改变。
程序代码
package main import "fmt" func main() { fmt.Println("为切片动态添加元素")
var a []int
a = append(a, ) //追加一个元素
a = append(a, , , ) //追加一组元素
a = append(a, []int{, , }...) //追加一个切片, 切片需要解包 for k, v := range a {
fmt.Printf("%d %d \n", k, v)
}
fmt.Println("在切片的开头添加元素")
var b = []int{, , }
b = append([]int{}, b...) //在开头添加1个元素
b = append([]int{-, -}, b...) //在开关添加1个切片
for k, v := range b {
fmt.Printf("%d %d \n", k, v)
}
}
执行结果