0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

数组的定义 什么是数组

麦辣鸡腿堡 来源:盼盼编程 作者:盼盼编程 2023-10-09 09:39 次阅读

数组

数组是内置类型,是一组同类型数据的集合,它是值类型,通过从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
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6512

    浏览量

    87601
  • 数据结构
    +关注

    关注

    3

    文章

    564

    浏览量

    39900
  • 数组
    +关注

    关注

    1

    文章

    409

    浏览量

    25595
收藏 人收藏

    评论

    相关推荐

    c语言二维数组定义及其规则详解

    一维数组只有一个下标,,称为一维数组,其数组元素也称为单下标变量。在实际问题中有很多量是二维的或多维的,因此C语言允许构造多维数组。多维数组
    发表于 11-16 08:49 2.2w次阅读
    c语言二维<b class='flag-5'>数组</b><b class='flag-5'>定义</b>及其规则详解

    java中数组的三种定义方式_java中数组定义及使用方法(推荐)

    java中,数组是一种很常用的工具,本文将介绍来java中数组的三种定义方式以及java中数组定义及使用方法。
    发表于 01-29 09:53 3.2w次阅读

    JAVA教程之一维数组和二维数组的介绍和应用说明

    声明一个数组就是要确定数组名、数组的维数和数组元素的数据类型。数组名是符合Java标识符定义规则
    发表于 01-16 11:02 0次下载
    JAVA教程之一维<b class='flag-5'>数组</b>和二维<b class='flag-5'>数组</b>的介绍和应用说明

    C语言教程之数组定义与使用说明

    本文档的详细介绍的是C语言教程之数组定义与使用说明主要内容包括了:1.一维数组定义与使用,2二维数组
    发表于 02-21 11:11 6次下载
    C语言教程之<b class='flag-5'>数组</b>的<b class='flag-5'>定义</b>与使用说明

    Verilog中的二维数组说明

    Verilog中提供了两维数组来帮助我们建立内存的行为模型。具体来说,就是可以将内存宣称为一个reg类型的数组,这个数组中的任何一个单元都可以通过一个下标去访问。这样的数组
    的头像 发表于 09-28 11:35 3w次阅读

    网络和变量的未压缩数组

    数组的维度定义数组可以存储的元素总数。未压缩的数组可以用任意数量的维度声明,每个维度存储指定数量的元素。声明数组维度有两种编码样式:显式地
    的头像 发表于 05-20 10:14 963次阅读

    C语言总结_数组知识

    当前文章复盘C语言的数组数组定义规则、数组空间类型、数组下标使用、数组存放的数据类型、
    的头像 发表于 08-14 09:38 1077次阅读

    二维数组数组指针以及指针数组

    二维数组数组指针以及指针数组
    的头像 发表于 08-16 09:02 2260次阅读

    C语言二维数组定义

    按以上定义数组a课用的下标范围为0~2,“列下标”的范围为0~3,。用a[3][4]表示元素显然超过了数组的范围。 读者要严格区分在定义数组
    的头像 发表于 03-09 11:38 1735次阅读

    C语言中字符数组介绍

    字符数组是用来存放字符数据的数组,字符数组中的一个元素存放一个字符,定义字符数组的方法和定义数值
    的头像 发表于 03-09 14:05 933次阅读

    零长数组如何使用定长包定义数据缓冲区

    零长数组 请先思考以下问题: C语言中,数组长度是否可以为0? 如果要接收一个不定长数据包,你会如何定义数据缓冲区? 第一个问题 : 在标准C语言中,没有长度为0的数组,但在 GNU
    的头像 发表于 09-27 14:58 455次阅读

    Shell脚本程序开发-数组(四)

    数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。
    的头像 发表于 10-22 17:50 292次阅读
    Shell脚本程序开发-<b class='flag-5'>数组</b>(四)

    python如何定义二维空数组

    在Python中,可以通过使用列表嵌套的方式来定义二维空数组。具体步骤如下: Step 1: 创建一个空的二维列表 要创建一个空的二维数组,首先需要定义
    的头像 发表于 11-21 15:12 679次阅读

    c语言中数组怎么定义

    C语言中,数组是一种用来存储相同类型元素的数据结构。它可以存储多个元素,并通过一个共同的名称来引用这些元素。数组是一种很重要的数据结构,可以用于解决很多实际的问题。 在C语言中,定义数组
    的头像 发表于 11-24 10:11 1096次阅读

    c语言中多维数组可以嵌套定义

    C语言中多维数组可以嵌套定义,这使得我们可以在一个数组中存储另一个数组。通过这种方式,我们可以创建更加复杂和灵活的数据结构,以便更好地表示和处理各种类型的数据。 首先,我们先介绍多维
    的头像 发表于 11-24 10:18 451次阅读