Go_030_append函数

2023-08-19  本文已影响0人  为宇绸缪

切片作为一个动态数组是可以添加元素的,添加方式为内建方法append。

扩容机制:按照当前容量两倍扩容,把原来的内容给拷贝过来。扩容之后和之前的数组没有关系了

s1 := append(s, 1): 把 1 追加到 s1 里面。append 返回值是新生成的切片
s3 := append(s2, t...): t... 表示把切片中的值给添加进来。go当中无法直接将两个切片通过 append 连接
var s4 = make([]int, 3, 10): 这里开辟的切片的前3个位置是0,如果再添加数值是从第4个位置开始

package main

import "fmt"

func main() {
    var s []int
    s1 := append(s, 1)  
    fmt.Println(s1)

    s2 := append(s1, 2, 3, 4)
    fmt.Println(s2)

    var t = []int{5, 6, 7}
    s3 := append(s2, t...)
    fmt.Println(s3)

    var s4 = make([]int, 3, 10)  
    s5 := append(s4, 100)
    fmt.Println(s5) 
}

运行结果
[1]
[1 2 3 4]
[1 2 3 4 5 6 7]
[0 0 0 100]

上一篇下一篇

猜你喜欢

热点阅读