当前位置 >> 课程学习 >> 第4章 >> 4.3 数组

4.3 数组

    数组是一组逻辑上相互关联的值,这些值通过一个名称即数组名来存取,数组中的每一个值称为一个数组元素,所有这些值存放在内存中一段连续的空间中。通过数组名和下标对数组元素进行存取。

4.3.1 数组

    在程序中数组必须先声明后使用,数组中包含的元素个数称为数组大小。
    根据数组在使用过程中是否改变大小,将其分为静态数组和动态数组两个大的类型。静态数组打大小是固定的,动态数组可以动态地改变数组的大小。
    VB.NET中数组根据维度又分为一维数组和多维数组。
    1.数组的声明
    (1)显式界限声明
    一维数组的显式界限声明语法格式如下:
       Declare 数组名(下标上界) [As 数据类型]
    二维数组的显式界限声明语法格式如下:
       Declare 数组名(下标上界1,下标上界2) [As 数据类型]
    说明:
       Declare包括Dim、Public、Private或Static等,其中Dim语句是最常用的。
    “数组名”指声明数组的名称,必须遵循标识符的命名规则。
    数组的每维下标的下界均为0,一维数组的大小为:下标上界+1。数组的每个维度的大小最大为整数值231-1。
    “As 数据类型”:如果省略,则默认为是Object型数组。一般情况下,数组中的每个元素的数据类型必须相同,若数组的数据类型为Object时,数组可包含不同类型的数据。
    “数据类型”是指数组的数据类型,也就是每个数组元素的类型。
    对于用显式界限声明的数组不允许进行显式初始化。
    2.隐式界限声明
    (1)在声明时初始化
    所谓隐式界限声明就是在声明时不指定下标上界,这时必须给出初始化列表。
    一维数组的一般格式为:Declare 数组名() [As 数据类型]={初始化值列表}
    二维数组的一般格式为:Declare 数组名(,) [As 数据类型]={双层初始化值列表}
    此时VB.NET会自动根据初始化值列表中元素个数确定数组的大小。
    (2)在声明中使用New子句初始化
    在声明数组的同时可以使用New子句初始化数组,也可以在后面的赋值语句中初始化数组。
    在New子句中,在圆括号中指定下标上界,并在大括号中给出数组元素值,一维数组的一般语法格式:
       Declare 数组名() As 数据类型=New 数据类型([下标上界]){初始化值列表}
    语句的功能是声明并初始化一个指定数据类型的数组,并指定其下标上界和初始化值列表。
    3.数组的基本操作
    数组的基本操作有数组元素的引用和赋值等。
    (1)数组元素的引用
    一维数组元素的引用方式如下:
       数组名(下标)
    二维数组元素的引用方式如下:
       数组名(下标表达式1,下标表达式2)
    其中,下标表达式可以是整形常量或整形表达式,但不能超过相应维的范围。
    (2)数组元素的赋值
    实际上,每个一维数组元素就是一个变量,可以采用像给变量赋值的方式给数组元素赋值,但不能直接给整个数组赋值。
    (3)For Each…Next语句在数组中的使用
    For Each…Next语句和For…Next语句功能一样,当满足条件时,会将For…Next间的语句执行一次,直到不满足条件为止。For Each…Next语句通常用于扫描数组或集合中的所有元素,其一般语法格式如下:
       For Each 变量 in数组名或集合名
          …
       Next