goLang slice 和 array区别

goLang slice 和 array区别,第1张

概述array 类型 array是固定长度的数组,使用前必须确定数组长度 golang array 特点: golang中的数组是值类型,也就是说,如果你将一个数组赋值给另外一个数组,那么,实际上就是整个数组拷贝了一份 如果golang中的数组作为函数的参数,那么实际传递的参数是一份数组的拷贝,而不是数组的指针 array的长度也是Type的一部分,这样就说明[10]int和[20]int是不一样的。 array 类型
array是固定长度的数组,使用前必须确定数组长度

golang array 特点:

golang中的数组是值类型,也就是说,如果你将一个数组赋值给另外一个数组,那么,实际上就是整个数组拷贝了一份 如果golang中的数组作为函数的参数,那么实际传递的参数是一份数组的拷贝,而不是数组的指针 array的长度也是Type的一部分,这样就说明[10]int[20]int是不一样的。 slice类型 slice是一个引用类型,是一个动态的指向数组切片的指针。 slice是一个不定长的,总是指向底层的数组array的数据结构。 1.创建slice
动态数组创建,类似创建数组,但是没有指定固定长度var al []int     //创建slicesl := make([]int,10)  //创建有10个元素的slicesl:=[]int{1,2,3} //创建有初始化元素的slice
2.先创建数组,在数组的基础上建立切片slice
var arr =[10]{1,3,4,5。6}  sl := arr[2:5] //创建有3个元素的slice
3.slice有一些简便的 *** 作
- `slice`的默认开始位置是0,`ar[:n]`等价于`ar[0:n]` - `slice`的第二个序列默认是数组的长度,`ar[n:]`等价于`ar[n:len(ar)]`
数组和slice的区别 声明数组时,方括号内写明了数组的长度或者...,声明slice时候,方括号内为空 作为函数参数时,数组传递的是数组的副本,而slice传递的是指针。 总结

以上是内存溢出为你收集整理的goLang slice 和 array区别全部内容,希望文章能够帮你解决goLang slice 和 array区别所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1280897.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存