Go語言的內建函數 append() 能夠爲切片動態添加元素。不過須要注意的是,在使用 append() 函數爲切片動態添加元素時,若是空間不足以容納足夠多的元素,切片就會進行「擴容」,此時新切片的長度會發生改變。app
程序代碼函數
package main import "fmt" func main() { fmt.Println("爲切片動態添加元素") var a []int a = append(a, 1) //追加一個元素 a = append(a, 2, 3, 4) //追加一組元素 a = append(a, []int{5, 6, 7}...) //追加一個切片, 切片須要解包 for k, v := range a { fmt.Printf("%d %d \n", k, v) } fmt.Println("在切片的開頭添加元素") var b = []int{1, 2, 3} b = append([]int{0}, b...) //在開頭添加1個元素 b = append([]int{-2, -1}, b...) //在開關添加1個切片 for k, v := range b { fmt.Printf("%d %d \n", k, v) } }
執行結果spa