Files
openlan/misc/learn/append.go
2022-09-24 17:19:08 +08:00

42 lines
748 B
Go
Executable File

package main
import "fmt"
func main() {
var a = []int{1, 2, 3}
fmt.Println(a)
a0 := append(a, []int{4, 5, 6}...)
a0[0] = 9
a1 := append(a, []int{7, 8}...)
fmt.Println(a, a0)
fmt.Println(a, a1)
a0 = append(a[:3], []int{4, 5, 6}...)
a0[0] = 9
a1 = append(a[:3], []int{7, 8}...)
fmt.Println(a, a0)
fmt.Println(a, a1)
a = make([]int, 0, 1024)
b := append(a, []int{4, 5, 6}...)
fmt.Println(b, a)
//fmt.Println(cap(b), len(b))
//fmt.Println(cap(a), len(a))
c := append(b, []int{8, 9}...)
c[1] = 10
b[0] = 9
fmt.Println(c, b)
//fmt.Println(cap(c), len(c))
//fmt.Println(cap(b), len(b))
bb := b
b = append(b, []int{8, 9}...)
bb[2] = 11
fmt.Println(b, bb)
//fmt.Println(cap(bb), len(bb))
//fmt.Println(cap(b), len(b))
}