如何:初始化多维数组

更新:2007 年 11 月

如果不是必须对每个维度都进行说明,就可以用初始化一维数组的方法来初始化多维数组变量。

初始化多维数组变量

  • 在数组变量声明中,在圆括号中指定每个索引上限(用逗号分隔)。下面的示例声明并创建一个变量来存储一个包含 Short 数据类型 (Visual Basic) 元素的二维数组,其中只指定了上限。

    Dim sizes(1, 1) As Short
    

    执行了此语句后,变量 sizes 中的数组共有四个存储了默认值的元素,索引分别为 (0, 0)、(0, 1)、(1, 0) 和 (1, 1)。如果以这样的方式创建数组,则必须使用后面的赋值语句给每个元素赋值。

    - 或 -

  • 在声明后添加等号 (=) 和 New (Visual Basic) 子句。在 New 子句中,重复该元素数据类型,在圆括号内指定索引上限,并提供一对空大括号 ({})。下面的示例声明并创建一个变量来存储一个包含 Short 数据类型元素的三维数组,其中仅指定了上限。

    Dim replyCounts(,,) As Short = New Short(2, 1, 2) {}
    

    执行此语句后,变量 replyCounts 中的数组有 18 个存储默认值的元素。如果以这样的方式创建数组,则必须使用后面的赋值语句给每个元素赋值。

    说明:

    只能在一个位置初始化索引上限。如果在数组变量名称后面的圆括号中指定上限,则不能使用 New 子句。如果在 New 子句中的圆括号内指定上限,则必须让变量名称后面的圆括号保留空白。

    - 或 -

  • 在 New 子句中的圆括号内指定每个索引上限,并在大括号 ({}) 内提供元素值。下面的示例声明、创建并初始化一个变量,在其中存储一个包含 Short 数据类型元素的二维数组,并指定了上限和值。请注意 New 子句中的两级大括号。

    Dim startingScores(,) As Short = New Short(1, 1) {{10, 10}, {10, 10}}
    

    执行此语句后,变量 startingScores 中的数组就存储了 4 个经过初始化的元素。如果同时提供上限和值,则必须在每一个维度上为从索引 0 到索引上限的每个元素提供一个值。

    - 或 -

  • 在 New 子句中,圆括号内仅包含逗号(表示相应维数),并在大括号 ({}) 内提供元素值。下面的示例声明、创建并初始化一个变量,以存储一个包含 Single 数据类型 (Visual Basic) 数据类型元素的二维数组,其中仅指定了元素值。请注意 New 子句中的两级大括号。

    Dim diagonal(,) As Single = New Single(,) {{1, 0}, {0, 1}}
    

    执行此语句后,变量 diagonal 中的数组就存储了 4 个经过初始化的元素。

请参见

任务

如何:声明数组变量

如何:创建多维数组

如何:初始化数组变量

如何:初始化交错数组

数组疑难解答

概念

Visual Basic 中的多维数组

其他资源

数组 (Visual Basic)