
切片增加 Link to heading
使用append方法可以给切片后面追加数据,返回新切片;
容量够追加 Link to heading
如果一个切片数据,足够容纳追加的数据,那么不会新开辟内存
package main
import "fmt"
func main() {
  // make函数创建切片make(类型,长度,容量)
	var slice = make([]int, 5, 10)
	s1 := append(slice, 2, 3)
	fmt.Println(slice)
	fmt.Println(s1)
  // 修改第二个数据
	s1[1] = 111
  // [0 111 0 0 0]
	fmt.Println(slice)
  // [0 111 0 0 0 2 3]
	fmt.Println(s1)
}
容量不够追加 Link to heading
切片容量不够追加,会创建新变量并2倍扩容
package main
import "fmt"
func main() {
	var slice = make([]int, 5, 10)
	s1 := append(slice, 2, 3, 4, 5, 6, 7)
	s1[1] = 111
  // 【0 0 0 0 0】
	fmt.Println(slice)
  // [0 111 0 0 0 555 3 4 5 6 7]
	fmt.Println(s1)
}

切片插入 Link to heading
利于切片方法和append可以实现从切片中插入数据
package main
import "fmt"
func main() {
	// 在特定位置插入 233
	d := []int{11, 22, 33, 44, 55}
	d = append(d[:2], append([]int{233}, d[2:]...)...)
	fmt.Println(d)
}
切片删除 Link to heading
package main
import "fmt"
func main() {
	// 删 33
	c := []int{11, 22, 33, 44, 55}
	c = append(c[:2], c[2+1:]...)
	fmt.Println(c)
}