- 切片
- 定义
- 切片也叫动态数组;是基于数组类型的一层封装;它肥肠灵活,可以自动扩容;数组称为切片的底层数组。切片是对数组的一个连续片段的引用,所以切片是一个引用类型
- 基本操作
- 初始化
- var a[]int定义一个int类型空切片a
- make
- make([]type ,size,cap)
- type是切片类型,size分配多少个元素;cap为预分配的元素数量。
- 使用make()函数生成的切片会分配内存,如果不指定容量那么默认长度和容量相等。
- make([]type ,size,cap)
- 切片内部结构包括 地址add 大小len 容量cap
- 索引
- slice[开始位置:结束位置]
- 当数组长度为3,超界索引会报错
- 追加
- append函数 append(a," ")
- 遍历
- for ...len()
- for range()
- copy()
- copy(结果,来源)
- 注意
- 切片是动态结构,只能与nil判断。
- 初始化
- 定义