1、基本用法: a = append(a, b...) 例如:list = appened(list,[]int{1,2,3,4}...) 可以用来合并两个列表. 不用这样了 :list := make([]int,len(list1)+len(list2)) 然后再copy(list,list1) copy(list[len(list1):],list2) 2、Copy: b = make([]T, len(a)) copy(b, a) 或者: b = append([]T(nil), a...) 3、Cut: a = append(a[:i], a[j:]...) 4、Delete: a = append(a[:i], a[i+1:]...) 或者: a = a[:i+copy(a[i:], a[i+1:])] 例如:a[len(a)-1], a = nil, append(a[:i], a[i+1:]...) 5、Delete without preserving order: a[i], a = a[len(a)-1], a[:len(a)-1] 例如: a[i], a[len(a)-1], a = a[len(a)-1], nil, a[:len(a)-1] 6、Expand: a = append(a[:i], append(make([]T, j), a[i:]...)...) 7、Extend: a = append(a, make([]T, j)...) 8、Insert: a = append(a[:i], append([]T{x}, a[i:]...)...) 例如: s = append(s, 0) copy(s[i+1:], s[i:]) s[i] = x 9、InsertVector: a = append(a[:i], append(b, a[i:]...)...) 10、Pop x, a = a[len(a)-1], a[:len(a)-1] 11、Push: a = append(a, x) 12、Shift x, a := a[0], a[1:] 13、Unshift a = append([]T{x}, a...) 14、Reversing: for i := len(a)/2-1; i >= 0; i-- { opp := len(a)-1-i a[i], a[opp] = a[opp], a[i] }
原文地址:http://blog.csdn.net/fyxichen/article/details/46622763