Arrays

优质
小牛编辑
136浏览
2023-12-01

使用任何编程语言的数组都可以对相同类型的值列表进行分组。 数组的使用是它允许您构建一个类似类型的值的列表,这些值是sortable, searchable并且可以easily manipulated 。 Rexx还允许定义数组。 这些阵列可以是一维的或多维的。

Rexx数组可能很稀疏。 也就是说,并非每个数组位置都必须具有值,甚至不能初始化。 在包含数据元素的那些之间可以存在空数组位置或槽。 或者数组可以是密集的,其中连续的数组插槽都包含数据元素。

在许多编程语言中,您必须关注表中第一个条目的下标。 第一个数字下标是0还是1? 在Rexx中,第一个下标是你使用的任何东西! 因此,根据您的喜好将第一个数组元素输入到位置0或1。

array_name.0 = ‘first element’

OR

array_name.1 = ‘first element’

我们来看看阵列可用的不同操作。

创建数组 (Creating Arrays)

使用相同的命名约定创建数组,该约定用于Rexx中的变量。

创建数组的一般语法如下 -

Arrayname.index = value 

哪里

  • Arrayname - 这是提供给阵列的名称。

  • Index - 这是数组中用于引用特定元素的索引位置。

  • Value - 这是分配给数组中索引元素的值。

数组声明的示例如下 -

Example

/* Main program */ 
list.1 = 0 
list.2 = 0 
list.3 = 0

关于上述计划需要注意以下几点 -

  • 数组的名称以列表形式给出
  • 数组中有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 

显示数组的值

可以通过参考数组元素的索引位置来显示数组的值。 以下示例显示了访问数组的各种元素。

Example

/* 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 - 这是需要复制元素的源数组。

有关如何执行数组复制操作的示例,请参见以下程序 -

Example

/* 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中提供的迭代语句来迭代数组的元素。 如何做到这一点的一个例子如下 -

Example

/* 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 loop用于遍历数组元素。

  • 变量number_of_elements用于存储数组中的元素数。

  • variable j用于迭代数组的每个元素。

上述计划的输出将是 -

10
20
30

Two-dimensional Arrays

还提到我们可以在Rexx中构建多维数组。 让我们看一下如何实现二维数组的示例。

Example

/* 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创建另一个内部数组。