数组的分类

 我来答
q喜气洋洋p

2021-07-29 · 还签啥名呀
q喜气洋洋p
采纳数:22826 获赞数:45543

向TA提问 私信TA
展开全部

数组分类

  1.数组是由一组有序的值或键值对组成的数据结构

  2.数组根据键名类型分为:索引数组 与 关联数组 二大

  3.索引数组:键名是元素的位置索引,默认从0开始,采用系统自动处理可以省略键名

  4.关联数组:键名是自定义的字符串,类似于对象中的属性列表



数组类型

编辑 语音

多维数组

有时需要追踪记录数组中的相关信息。

例如,为了追踪记录计算机屏幕上的每一个像素,需要引用它的 X、Y坐标。这时应该用多维数组存储值。

可用 Visual Basic 声明多维数组。

例如,下面的语句声明了一个过程内的 10 × 10 的二维数组

Static MatrixA (9,9) As Double

可用显式下界来声明两个维数或两个维数中的任何一个:

Static MatrixA (1 To 10,1 To 10) As Double

可以将所有这些推广到二维以上的数组。例如:

Dim MultiD (3,1 To 10,1 To 15)

这个声明建立了三维数组,大小为 4 × 10 × 15。元素总数为三个维数的乘积,为 600。

注意

在增加数组的维数时,数组所占的存储空间会大幅度增加,所以要慎用多维数组。使用 Variant 数组时更要格外小心,因为他们需要更大的存储空间。

用循环操作数组

可以用 For循环嵌套有效的处理多维数组。例如,在 MatrixA 中基于每个元素在数组中的位置为其赋值:

Dim I As Integer,J As Integer

Static MatrixA(1 To 10,1 To 10) As Double

For I = 1 To 10

For J = 1 To 10

MatrixA (I,J) = I * 10 + J

Next J

Next I

一维数组

定义

一维数组是最简单的数组,其逻辑结构是线性表。要使用一维数组,需经过定义、初始化和应用等过程。

数组声明

在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。

数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。

举例:

int[]x; //声明名称为x的int型数组

x=new int[10]; //x数组中包含有10个元素,并为这10个元素分配内存空间

在声明数组时,也可以将两个语句合并成一行,格式如下:

数据类型[]数组名= new 数据类型[个数];

利用这种格式在声明数组的同时,也分配一块内存供数组使用。如上面的例子可以写成:

int[]x = new int [10];

等号左边的int[]x相当于定义了一个特殊的变量x,x的数据类型是一个对int型数组对象的引用,x就是一个数组的引用变量,其引用的数组元素个数不定。等号右边的new int[10]就是在堆内存中创建一个具有10个int型变量的数组对象。int[]x = new int [10];就是将右边的数组对象赋值给左边的数组引用变量。 [5] 

二维数组

定义

前面介绍的数组只有一个下标,称为一维数组, 其数组元素也称为单下标变量。在实际问题中有很多量是二维的或多维的, 因此C语言允许构造多维数组。多维数组元素有多个下标, 以标识它在数组中的位置,所以也称为多下标变量。本小节只介绍二维数组,多维数组可由二维数组类推而得到。二维数组类型说明的一般形式是:

类型说明符数组名[常量表达式1][常量表达式2]…;

其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。例如:

int a[3][4]; 说明了一个三行四列的数组,数组名为a,其下标变量的类型为整型。该数组的下标变量共有3×4个,即:

a[0][0],a[0][1],a[0][2],a[0][3]

a[1][0],a[1][1],a[1][2],a[1][3]

a[2][0],a[2][1],a[2][2],a[2][3]

二维数组在概念上是二维的,即是说其下标在两个方向上变化, 下标变量在数组中的位置也处于一个平面之中, 而不是象一维数组只是一个向量。但是,实际的硬件存储器却是连续编址的, 也就是说存储器单元是按一维线性排列的。如何在一维存储器中存放二维数组,可有两种方式:一种是按行排列, 即放完一行之后顺次放入第二行。另一种是按列排列, 即放完一列之后再顺次放入第二列。在C语言中,二维数组是按行排列的。在如上中,按行顺次存放,先存放a[0]行,再存放a[1]行,最后存放a[2]行。每行中有四个元素也是依次存放。由于数组a说明为

int类型,该类型占两个字节的内存空间,所以每个元素均占有两个 字节(数组中每一格为一字节)。

三维数组

三维数组,是指维数为三的数组结构。三维数组是最常见的多维数组,由于其可以用来描述三维空间中的位置或状态而被广泛使用。

三维数组就是维度为三的数组,可以认为它表示对该数组存储的内容使用了三个独立参量去描述,但更多的是认为该数组的下标是由三个不同的参量组成的。

数组这一概念主要用在编写程序当中,和数学中的向量、矩阵等概念有一定的差别,主要表现:在数组内的元素可以是任意的相同数据类型,包括向量和矩阵。

对数组的访问一般是通过下标进行的。在三维数组中,数组的下标是由三个数字构成的,通过这三个数字组成的下标对数组的内容进行访问。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式