切片是数组的一个窗口,实际上是一个可以在函数内外传递的指针
切片的初始化: var empty []int
empty = []int{1,2,3}
用数组声明切片方法 : newSlice := empty[2:4](这里empty为数组)
此时这个切片的长度是2,取了empty[2]和empty[3],因为相比于数组而言,切片的最后一个元素是不计算其中的
go是可以通过... 声明可变函数的,具体如下
func sum(n int,m ...int)int {
}
此时m实际上就是一个切片,你可以直接传入一个切片,也可以传入一组数字,系统会帮你转化成切片,下面是两个例子
slice := []int{1,2,3}
sum(1,slice...) //这里的切片要加...代表的是取切片的每一个数,依次传入函数
或者
sum(1,2,3)
如果你想要用一个切片去声明另一个切片,本质上来说这两个切片就是同一个,修改其中一个切片会导致另一个切片也同时被修改
slice := []int{1,2,3}
slice1 := slice
slice1[0] = 2
此时,slice[0]也会为2

3962

被折叠的 条评论
为什么被折叠?



