切片 a、b、c 的长度和容量分别是多少?
func main() { s := [3]int{1, 2, 3} a := s[:0] b := s[:2] c := s[1:2:cap(s)] }
参考答案及解析:a、b、c 的长度和容量分别是 0 3、2 3、1 2。
知识点:数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,形如:[i:j] 和 [i:j:k],假设截取对象的底层数组长度为 l。在操作符 [i:j] 中,如果 i 省略,默认 0,如果 j 省略,默认底层数组的长度,截取得到的切片长度和容量计算方法是 j-i、l-i。操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度和容量计算方法是 j-i、k-i。
数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,c := s[1:2:cap(s)]
mark
Mark.
打卡
len(a)=0,cap(a)=3; len(b)=2,cap(b)=3; len(c)=1,cap(c)=2; (golang码农求职)
打卡 切片截取后的长度和容量
03 13 23 完整的切片表达式a[low : high : max] 通过 max-low 控制容量
数组截取判断
1
数组截取之后,就转变成切片了,有意思
切片长度和容量计算方法是 j-i、l-i
md
mark。。。。。。。。
数组或切片的截取操作: 形如:操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度 j-i 和容量 k-i。
mk
数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,形如:[i:j] 和 [i:j:k],假设截取对象的底层数组长度为 l。在操作符 [i:j] 中,如果 i 省略,默认 0,如果 j 省略,默认底层数组的长度,截取得到的切片长度和容量计算方法是 j-i、l-i。操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度和容量计算方法是 j-i、k-i。
打卡学习
切片长度容量 mark
0 3,2 3 ,1 2
打卡第四天:数组或切片的截取操作: 形如:操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度 j-i 和容量 k-i。
package main import "fmt" func main() { s := [3]int{1, 2, 3} a := s[:0] b := s[:2] c := s[1:2:cap(s)] fmt.Println("---a---") fmt.Println(a) fmt.Println("len:",len(a)) fmt.Println("cap:",cap(a)) fmt.Println("---b---") fmt.Println(b) fmt.Println("len:",len(b)) fmt.Println("cap:",cap(b)) fmt.Println("---c---") fmt.Println(c) fmt.Println("len:",len(c)) fmt.Println("cap:",cap(c)) } //output //---a--- //[] //len: 0 //cap: 3 //---b--- //[1 2] //len: 2 //cap: 3 //---c--- //[2] //len: 1 //cap: 2
切片长度和容量计算方法是 j-i、k-i
`单行代码`
数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,c := s[1:2:cap(s)]
mark
数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,c := s[1:2:cap(s)]
Mark.
打卡
len(a)=0,cap(a)=3; len(b)=2,cap(b)=3; len(c)=1,cap(c)=2; (golang码农求职)
打卡 切片截取后的长度和容量
打卡
mark
03 13 23 完整的切片表达式a[low : high : max] 通过 max-low 控制容量
打卡
打卡
数组截取判断
1
数组截取之后,就转变成切片了,有意思
mark
切片长度和容量计算方法是 j-i、l-i
md
mark。。。。。。。。
数组或切片的截取操作: 形如:操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度 j-i 和容量 k-i。
mk
mark
数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,形如:[i:j] 和 [i:j:k],假设截取对象的底层数组长度为 l。在操作符 [i:j] 中,如果 i 省略,默认 0,如果 j 省略,默认底层数组的长度,截取得到的切片长度和容量计算方法是 j-i、l-i。操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度和容量计算方法是 j-i、k-i。
mark
打卡学习
1
mark
切片长度容量 mark
知识点:数组或切片的截取操作。截取操作有带 2 个或者 3 个参数,形如:[i:j] 和 [i:j:k],假设截取对象的底层数组长度为 l。在操作符 [i:j] 中,如果 i 省略,默认 0,如果 j 省略,默认底层数组的长度,截取得到的切片长度和容量计算方法是 j-i、l-i。操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度和容量计算方法是 j-i、k-i。
打卡
mark
0 3,2 3 ,1 2
打卡第四天:数组或切片的截取操作: 形如:操作符 [i:j:k],k 主要是用来限制切片的容量,但是不能大于数组的长度 l,截取得到的切片长度 j-i 和容量 k-i。
mark
mark
mark
mark
mark
mark
mark
切片长度和容量计算方法是 j-i、k-i