📅  最后修改于: 2020-11-02 03:58:46             🧑  作者: Mango
使用任何编程语言的数组都可以将相同类型的值列表进行分组。数组的用途是它允许您构建可排序,可搜索且易于操纵的相似类型值的列表。 Rexx还允许定义数组。这些阵列可以是一维或多维的。
Rexx数组可能是稀疏的。也就是说,不是每个数组位置都必须有一个值,甚至不必初始化。确实包含数据元素的位置之间可能有空的数组位置或插槽。或阵列可以是密集的,其中连续的阵列插槽都包含数据元素。
在许多编程语言中,您必须关注表中第一个条目的下标是什么。第一个数字下标是0还是1?在Rexx中,第一个下标就是您所使用的!因此,根据需要将第一个数组元素输入位置0或1。
array_name.0 = ‘first element’
要么
array_name.1 = ‘first element’
让我们看一下可用于数组的不同操作。
数组使用与Rexx中变量相同的命名约定创建。
创建数组的一般语法如下-
Arrayname.index = value
哪里
Arrayname-这是提供给阵列的名称。
索引-这是数组中引用特定元素的索引位置。
值-这是分配给数组中索引元素的值。
数组声明的示例如下-
例
/* Main program */
list.1 = 0
list.2 = 0
list.3 = 0
关于上述程序,需要注意以下几点-
可以按照初始化数组元素的相同方式将值重新分配给数组元素。
以下程序是可以分配给现有数组的各种索引值的值的示例。
/* Main program */
list.1 = 0
list.2 = 0
list.3 = 0
/* Assigning new values to the array*/
list.1 = 10
list.3 = 30
可以通过引用数组元素的索引位置来显示数组的值。以下示例说明了如何访问数组的各个元素。
例
/* Main program */
list.1 = 0
list.2 = 0
list.3 = 0
/* Assigning new values to the array*/
list.1 = 10
list.3 = 30
say list.1
say list.2
say list.3
上面程序的输出如下:
10
0
30
数组中的所有元素都可以复制到另一个数组中。其一般语法如下-
Newarray. = sourcearray.
哪里
Newarray-这是需要在其中复制元素的新数组。
Sourcearray-这是需要从中复制元素的源数组。
以下程序显示了如何执行数组复制操作的示例-
例
/* Main program */
list.1 = 0
list.2 = 0
list.3 = 0
/* Assigning new values to the array*/
list.1 = 10
list.3 = 30
listnew. = list.
say listnew.1
say listnew.2
say listnew.3
上面程序的输出将是-
10
0
30
也可以使用Rexx中可用的迭代语句来迭代数组的元素。如何做到这一点的一个例子如下-
例
/* Main program */
list.1 = 10
list.2 = 20
list.3 = 30
number_of_elements = 3
do j = 1 to number_of_elements
say list.j
end
关于上述程序,需要注意以下几点:
do循环用于遍历数组元素。
变量number_of_elements用于存储数组中元素的数量。
变量j用于遍历数组的每个元素。
上面程序的输出将是-
10
20
30
还提到了我们可以在Rexx中构造多维数组。让我们看一下如何实现二维数组的示例。
例
/* Main program */
list.1 = 10
list.1.1 = 11
list.1.2 = 12
say list.1
say list.1.1
say list.1.2
上面程序的输出如下所示:
10
11
12
关于上述程序,需要注意以下几点:
要创建多维数组,我们可以使用另一层索引。因此,在我们的示例中,我们使用list.1.1为列表数组的索引值1创建另一个内部数组。