package main import ( "fmt" ) func slicefn() { var s []string fmt.Println("uninit: ", s, s == nil, len(s) == 0) s = make([]string, 3) fmt.Println("emp: ", s, "len: ", len(s), "cap: ", cap(s)) s[0] = "a" s[1] = "b" s[3] = "c" fmt.Println("set: ", s) fmt.Println("get: ", s[2]) fmt.Println("len: ", len(s)) s = append(s, "d") s = append(s, "e", "f") fmt.Println("apd: ", s) c := make([]string, len(s)) copy(c, s) fmt.Println("cpy: ", c) l := s[2:5] fmt.Println("sl1: ", l) l = s[2:] fmt.Println("sl2: ", l) }