Die Definition von Array-Dimensionen ist im Statement Show Die array-dimension-definition hat die folgende Syntax: Dieses Dokument behandelt folgende Themen: FunktionMit der array-dimension-definition können Sie bei einer Array-Definition die Unter- und Obergrenze (bound) einer Dimension festlegen. Sie können bis zu 3 Dimensionen für ein Array definieren. Siehe auch Arrays im Leitfaden zur Programmierung. Syntax-BeschreibungboundAls Grenze (bound) kann eines der folgenden Elemente verwendet werden:
Wenn nur ein Bound angegeben ist, stellt der Wert die Obergrenze dar, und die Untergrenze wird als 1 angenommen. X-ArraysWenn mindestens eine Grenze (bound) in mindestens einer Dimension eines Arrays als erweiterbar angegeben wird, bezeichnet man dieses Array als X-Array (eXtensible Array). Nur eine Grenze (entweder oberer oder unterer) in einer Dimension kann erweiterbar sein, aber nicht beide. Mehrdimensionale Arrays können eine Mischung von konstanten und erweiterbaren Grenzen haben, z.B. #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array0. Beispiel: DEFINE DATA LOCAL 1 #ARRAY1(I4/1:10) 1 #ARRAY2(I4/10) 1 #X-ARRAY3(I4/1:*) 1 #X-ARRAY4(I4/*,1:5) 1 #X-ARRAY5(I4/*:10) 1 #X-ARRAY6(I4/1:10,100:*,*:1000) END-DEFINE Die folgende Tabelle enthält eine Übersicht über die Grenzen der Arrays aus dem obigen Programm. Dimension 1Dimension 2Dimension 3Untere GrenzeObere GrenzeUntere GrenzeObere GrenzeUntere GrenzeObere Grenze#ARRAY1110----#ARRAY2110----#X-ARRAY31erweiterbar----#X-ARRAY41erweiterbar15--#X-ARRAY5erweiterbar10----#X-ARRAY6110100erweiterbarerweiterbar1000Beispiele für Array-Definitionen: #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array Variable Arrays in einer Parameter Data Area:In einer Parameter Data Area können Sie ein Array mit einer variablen Anzahl von Ausprägungen angeben. Dies erfolgt mittels der Index-Notation #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array1. Beispiel 1: #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array2 Beispiel 2: #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array3 Ein Parameter-Array, das eine variable Index-Notation #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array1 enthält, kann nur redefiniert werden in der Länge
Eine variable Index-Notation #ARRAY2(I4/10) /* a one-dimensional array with 10 occurrences (1:10) #X-ARRAY4(I4/*,1:5) /* a two-dimensional array #X-ARRAY6(I4/1:10,100:*,*:1000) /* a three-dimensional array1 darf nicht in einem Redefinitionsblock verwendet werden. Beispiel: DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE Da die Anzahl der Ausprägungen zur Kompilierungszeit nicht bekannt ist, darf es nicht mit der Index-Notation (*) in den Statements DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE3, DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE4, DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE5 und DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE6 referenziert werden. Die Index-Notation (*) kann entweder für alle Dimensionen oder für keine Dimension benutzt werden. Gültige Beispiele: #ARR01 (*) #ARR02 (*,*) #ARR01 (1) #ARR02 (5,#FIELDX) #ARR02 (1,1:3) Ungültiges Beispiel: #ARRAYY (1,*) /* not allowed Um Laufzeitfehler zu vermeiden, sollte die maximale Anzahl der Ausprägungen eines solchen Arrays über einen anderen Parameter an das Subprogramm/die Subroutine übergeben werden. Als Alternative dazu können Sie die Systemvariable DEFINE DATA PARAMETER 1 #ARR(A6/1:V) 1 REDEFINE #ARR 2 #R-ARR(A1/1:V) /* (1:V) is not allowed in a REDEFINE block END-DEFINE7 benutzen. Was versteht man unter einem Array?Unter einem Array in Java versteht man einen Container, der eine feste Anzahl von Werten eines einzelnen Typs enthält. Bei der Deklaration wird von Beginn an ein konkreter Datentyp für das Array bestimmt, der dann nicht mehr verändert werden kann.
Was bringt ein Array?Arrays ermöglichen das Speichern von logisch zusammengehörenden Daten in einer übergeordneten Datenstruktur.
Was ist ein Array wert?Ein Array ist eine aus Zeilen und Spalten bestehende Tabelle mit Werten. Wenn Sie die Werte Ihrer Zellen in einer bestimmten Reihenfolge gruppieren möchten, können Sie in Ihrer Tabelle Arrays verwenden. Manche Funktionen geben Arrays zurück.
Was ist ein Array in PHP?Arrays sind ein wichtiges Konzept in PHP. Ein Array ist eine geordnete Liste. Beispielsweise eine Liste von Zahlen oder eine Liste von Texten (Strings). Wir können mittels einem Array beispielsweise die Wochentage in einer Liste zusammenfassen, oder alle Benutzer unsere Seite.
|