Rexx - อาร์เรย์

อาร์เรย์ในภาษาโปรแกรมใด ๆ ช่วยให้คุณสามารถจัดกลุ่มรายการของค่าประเภทเดียวกันได้ การใช้อาร์เรย์คือการช่วยให้คุณสร้างรายการประเภทของค่าที่คล้ายกันซึ่ง ได้แก่sortable, searchable และสามารถ easily manipulated. Rexx ยังช่วยให้สามารถกำหนดอาร์เรย์ได้ อาร์เรย์เหล่านี้อาจเป็นมิติเดียวหรือหลายมิติ

อาร์เรย์ Rexx อาจเบาบาง นั่นคือไม่ใช่ว่าทุกตำแหน่งอาร์เรย์จะต้องมีค่าหรือแม้กระทั่งการเริ่มต้น อาจมีตำแหน่งอาร์เรย์ว่างหรือช่องระหว่างตำแหน่งที่มีองค์ประกอบข้อมูล หรืออาร์เรย์อาจมีความหนาแน่นซึ่งสล็อตอาร์เรย์ที่ต่อเนื่องกันทั้งหมดมีองค์ประกอบข้อมูล

ในหลายภาษาโปรแกรมคุณต้องกังวลว่าตัวห้อยของรายการแรกในตารางคืออะไร ตัวห้อยตัวเลขตัวแรกเป็น 0 หรือ 1? ใน Rexx ตัวห้อยแรกคืออะไรก็ได้ที่คุณใช้! ดังนั้นให้ป้อนองค์ประกอบอาร์เรย์แรกในตำแหน่ง 0 หรือ 1 ตามที่คุณต้องการ

array_name.0 = ‘first element’

หรือ

array_name.1 = ‘first element’

มาดูการดำเนินการต่างๆสำหรับอาร์เรย์

การสร้างอาร์เรย์

อาร์เรย์ถูกสร้างขึ้นด้วยหลักการตั้งชื่อเดียวกันซึ่งใช้สำหรับตัวแปรใน 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

อาร์เรย์สองมิติ

มีการกล่าวถึงด้วยว่าเราสามารถสร้างอาร์เรย์หลายมิติใน Rexx ได้ ลองดูตัวอย่างวิธีการใช้อาร์เรย์ 2 มิติ

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 ของอาร์เรย์รายการ