package slice_test import "testing" // 切片定义 func TestSlienceInit(t *testing.T) { var s0 []int t.Log(len(s0), cap(s0)) s0 = append(s0, 1) t.Log(len(s0), cap(s0)) s1 := []int{1, 2, 3, 4} t.Log(len(s1), cap(s1)) s2 := make([]int, 3, 5) t.Log(len(s2), cap(s2)) t.Log(s2[0], s2[1], s2[2]) s2 = append(s2, 4) t.Log(len(s2), cap(s2)) t.Log(s2[0], s2[1], s2[2], s2[3]) } // 切片增长演示 func TestSliceGrowing(t *testing.T) { s := []int{} for i := 0; i < 10; i++ { s = append(s, i) t.Log(len(s), cap(s)) } } // 切片的共享内存 演示 func TestSliceShareMemory(t *testing.T) { letter := []string{"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "L"} letter2 := letter[3:6] t.Log(letter2, len(letter2), cap(letter2)) l3 := letter[5:8] t.Log(l3, len(l3), cap(l3)) l3[0] = "U" t.Log(letter2) t.Log(letter) } // 切片不能比较 func TestSliceCompare(t *testing.T) { // a := []int{1, 2, 3, 4} // b := []int{1, 2, 3, 4} // if a == b { // t.Log("equals") // } }