- 切片:切片是数组的一个引用,因此切片是引用类型。但自身是结构体,值拷贝传递。
2. 切片的长度可以改变,因此,切片是一个可变的数组。
3. 切片遍历方式和数组一样,可以用len()求长度。表示可用元素数量,读写操作不能超过该限制。
4. cap可以求出slice最大扩张容量,不能超出数组限制。0 <= len(slice) <= len(array),其中array是slice引用的数组。
5. 切片的定义:var 变量名 []类型,比如 var str []string var arr []int。
6. 如果 slice == nil,那么 len、cap 结果都等于 0。
package main
import(
"fmt"
)
func main() {
var s1 []int
if s1 == nil{
fmt.Println("是空")
}else{
fmt.Println("非空")
}
s2 := []int{
}
var s3 []int = make([]int,0)
fmt.Println(s1,s2,s3)
var s4 []int = make([]int,0,0)
fmt.Println(s4)
s5 := []int{
1,2,4}
fmt.Println(s5)
arr := [5]int{
1,2,3,4,5}
var s6 []int
s6 = arr[1:4]
fmt.Println(s6)
var arr1 = [...]int{
1,2,