go 语言切片
1.数组切片特点
数组切片就像一个指向数组的指针,实际上拥有自己的数据结构,数组切片的结构可以抽象为以下三个变量
a.一个指向原生数组的指针
b. 数组切片中元素的个数
c.数组切片已分配的存储空间
2.创建数组切片
创建数组切片的方式有两种-------基于数组和直接创建
2.2.1 基于数组的形式
go语言支持 myArr[first:last] 这样的方式生成一组数组切片
2.2.2直接创建
创建一个初始元素个数为5的数组切片,元素初始值为0:
mySlice1 := make([]int,5)
创建一个初始元素个数为5的切片,元素初始值为0,并且预留10个元素的存储空间
mySlice2 := make([]int,5,10)
直接创建包括5个元素的数组切片
3.元素遍历
4.动态增减元素
与数组相比,数组切片多了一个存储能力,即元素个数和存储多空间可以是两个不同多值。合理的设置存储能力的值,可以大大降低数组切片内部重新分配内存和搬送内存块的频率,从而提高性能。
mySlice := make([]int,5,10)
fmt.Println("len(mySlice):",len(mySlice)) //5
fmt.Println("cap(mySlice:)",cap(mySlice))//10
使用append 追加元素
append()的第二个参数是不定参数,可以直接将一个数组切片直接追加到数组切片的末尾。
5.基于数组切片创建切片
6.内容复制
本作品采用《CC 协议》,转载必须注明作者和本文链接