数组的定义 什么是数组

描述

数组

数组是内置类型,是一组同类型数据的集合,它是值类型,通过从0开始的下标索引访问元素值。

在初始化后长度是固定的,无法修改其长度。当作为方法的参数传入时将复制一份数组而不是引用同一指针。

数组的长度也是其类型的一部分,通过内置函数len(array)获取其长度。

还有几点要注意的:

  1. Go中的数组是值类型,如果你将一个数组赋值给另外一个数组,那么,实际上就是将整个数组拷贝一份。
  2. 如果Go中的数组作为函数的参数,那么实际传递的参数是一份数组的拷贝,而不是数组的指针,修改数组的值需要传递数组的指针。
  3. array的长度也是Type的一部分,这样就说明[1]int和[2]int是不一样的。
//值传递,传的是副本
func updateArr(b [3]int) {
     b[0] = 3
}

//传指针,[3]int是一个类型
func updateArrPoint(b *[3]int) {
     b[0] = 3
}

func main() {
     //常见两种初始化方式
     //var b = [...]int{1, 2, 3}
     var b = [3]int{1, 2, 3}

     updateArr(b)
     fmt.Println(b)
     updateArrPoint(&b)
     fmt.Println(b)
     //计算数组长度和容量
     fmt.Println(len(b))
     fmt.Println(cap(b))
}

打印:
[1 2 3]
[3 2 3]
3
3
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分