数组Array和切片Slice

本文详细介绍了数组Array和切片Slice的区别与使用。数组在声明时需指定容量和初值,长度固定,而切片是动态长度的数组,支持索引和切片访问。在初始化时,切片可以通过数组引用或make函数创建。函数参数传递时,数组按值传递,切片按引用传递。切片的append操作会复制数据到新slice,避免内存占用。
摘要由CSDN通过智能技术生成

数组Array
-需要在声明时指定容量和初值,长度固定,按索引进行访问。
初始化:
Demo:
var arr [5]int //声明了一个大小为5的数组,默认初始化值为[0,0,0,0,0]
arr := [5]int{1} //声明并初始化了一个大小为5的数组的第一个元素,初始化后值为[1,0,0,0,0]
arr := […]int{1,2,3} //通过…自动获取数组长度,根据初始化的值的数量将大小初始化为3,初始化后值为[1,2,3]
arr := […]int{4:1} //指定序号为4的元素的值为1,通过…自动获取长度为5,初始化后值为[0,0,0,0,1]
函数参数
-按值传递,指定大小

切片Slice
-动态长度的数组,索引/切片访问
-指针(slice),长度,容量(容量不足,容量*2)
初始化:
s := []int{1,2,3} //通过数组的引用初始化,值为[1,2,3],长度和容量为3
arr := [5]int{1,2,3,4,5}
s := arr[0:3] //通过数组的切片初始化,值为[1,2,3],长度为3,容量为5
s := make([]int, 3) //通过make函数初始化,值为[0,0,0],长度和容量为3
s := make([]int, 3, 5) //通过make函数初始化,值为[0,0,0],长度为3,容量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值