Go 语言 的 切片 添加元素使用 append 函数,我们可以使用 append 函数加上切片索引的形式实现在切片的任意位置插入元素。
使用 append 函数,配合切片索引实现在切片的 index 处添加元素
package main
import (
"fmt"
)
func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//使用append函数,配合切片索引实现在切片的index处添加元素
var sliceHaiCoder = []string{"Hello", "HaiCoder"}
sliceHaiCoder = append(sliceHaiCoder[:1], "嗨客网")
fmt.Println("sliceHaiCoder =", sliceHaiCoder)
}
程序运行后,控制台输出如下:
我们首先创建了一个有两个元素的切片,接着,我们使用 append 函数在原有切片的第一个元素之后添加一个元素,最后使用 print 打印切片的内容,添加的元素已经存在切片了。
上述代码的 sliceHaiCoder[:1],返回的是原有切片的第一个元素,因此我们这里的 append 函数,其实就是在原有切片的第一个元素之后添加一个元素。
使用 append 函数,在切片的开始插入元素
package main
import (
"fmt"
)
func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//使用append函数,在切片的开始插入元素
var sliceHaiCoder = []string{"Hello", "HaiCoder"}
element := "嗨客网"
sliceHaiCoder = append([]string{element}, sliceHaiCoder...)
fmt.Println("sliceHaiCoder =",sliceHaiCoder)
}
程序运行后,控制台输出如下:
我们首先创建了一个有两个元素的切片,接着,我们使用 append 将 element 转成切片传入 append 的第一个参数,将原有切片传入 append 的第二个参数,实现了再原有切片的开始处插入元素的效果。
使用 append 函数,在切片的 index 处插入元素
package main
import (
"fmt"
)
func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//使用append函数,在切片的index处插入元素
var sliceHaiCoder = []string{"Hello", "HaiCoder"}
element := "嗨客网"
sliceHaiCoder = append(sliceHaiCoder[:1], append([]string{element}, sliceHaiCoder[1:]...)...)
fmt.Println("sliceHaiCoder =",sliceHaiCoder)
}
程序运行后,控制台输出如下:
我们使用 append 函数嵌套 append 函数的形式,实现了在切片 index 处插入元素的效果。
使用 append 函数,在切片的 index 处插入切片
package main
import (
"fmt"
)
func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//使用append函数,在切片的index处插入切片
var sliceHaiCoder = []string{"Hello", "HaiCoder"}
var sliceCategory = []string{"Golang","Python","JavaScript"}
sliceHaiCoder = append(sliceHaiCoder[:1], append(sliceCategory, sliceHaiCoder[1:]...)...)
fmt.Println("sliceHaiCoder =",sliceHaiCoder)
}
程序运行后,控制台输出如下:
我们使用 append 函数嵌套 append 函数的形式,实现了在切片 index 处插入切片的效果。
在切片的 index 处添加元素语法:
sliceHaiCoder = append(sliceHaiCoder[:index], element)
在切片的开始插入元素:
sliceHaiCoder = append([]string{element}, sliceHaiCoder...)
在切片的 index 处添加元素语法:
sliceHaiCoder = append(sliceHaiCoder[:index], append([]string{element}, sliceHaiCoder[index:]...)...)
在 index 处插入切片语法:
sliceHaiCoder = append(sliceHaiCoder[:index], append(sliceCategory, sliceHaiCoder[index:]...)...)