Go 语言切片是对数组的抽象。
Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go中提供了一种灵活,
功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,
在追加时可能使切片的容量增大。
定义切片
var identifier []type
var slice1 []type = make([]type,len)
或者
slice1 := make([]type,len)
切片初始化
s :=[] int{1,2,3}
s := arr[startIndex:endIndex] //从下标startIndex到endIndex-1
为一个新的切片
s := arr[startIndex:]
缺省endIndex时将表示一直到arr的最后一个元素(包含最后一个)
s := arr[:endIndex]
缺省startIndex时将表示从arr的第一个元素开始(包含第一个)
append 和copy
append 往切片中追加数据
append(arr,data);
append(arr,data1,data2,data3)
copy 复制
copy(arr1,arr2)//将arr2复制到arr1中