切片slice
切片取值
s := []int{1,2,3,4,5,6,7}
a := s[1:5:7]
fmt.Println(a) [2 3 4 5] 切片的截取得到的还是切片,不能超做容器的范围
fmt.Printf("%T",a) []int 切片类型
s = s[low : high : max] 切片的三个参数的切片截取的意义为 low为截取的起始下标(含), high为切取的结束下标(不含high),max为切片保留的原切片的最大下标(不含max);即新切片从老切片的low下标元素开始,len = high - low, cap = max - low;high 和 max一旦超出在老切片中越界,就会发生runtime err,slice out of range。另外如果省略第三个参数的时候,第三个参数默认和第二个参数相同,即len = cap
网友评论