4D v13.4Creating Arrays |
||||||||||||||||||||||
|
4D v13.4
Creating Arrays
|
Command | Creates or resizes an array of |
ARRAY INTEGER | 2-byte Integer values |
ARRAY LONGINT | 4-byte Integer values (*) |
ARRAY REAL | Real values |
ARRAY TEXT | Text values (up to 2 GB of text per element) (**) |
ARRAY STRING | (obsolete in Unicode mode) (**) |
ARRAY DATE | Date values |
ARRAY BOOLEAN | Boolean values |
ARRAY PICTURE | Pictures values |
ARRAY POINTER | Pointer values |
Each array declaration command can create or resize one-dimensional or two-dimensional arrays. For more information about two-dimensional arrays, see the section Two-dimensional Arrays.
(*) Longint arrays allows you to manipulate data of Time type. To display a Time array in a form, apply to the associated form object the display format &/x, in which x represents the number of the format in the Time formats list (by order of appearance). For example, &/4 will display the Hour Min format.
(**) Text and String arrays work with the same types of elements: characters.
The following line of code creates (declares) an Integer array of 10 elements:
ARRAY INTEGER(aiAnArray;10)
Then, the following code resizes that same array to 20 elements:
ARRAY INTEGER(aiAnArray;20)
Then, the following code resizes that same array to no elements:
ARRAY INTEGER(aiAnArray;0)
You reference the elements in an array by using curly braces ({…}). A number is used within the braces to address a particular element; this number is called the element number. The following lines put five names into the array called atNames and then display them in alert windows:
ARRAY TEXT(atNames;5)
atNames{1}:="Richard"
atNames{2}:="Sarah"
atNames{3}:="Sam"
atNames{4}:="Jane"
atNames{5}:="John"
For($vlElem;1;5)
ALERT("The element #"+String($vlElem)+" is equal to: "+atNames{$vlElem})
End for
Note the syntax atNames{$vlElem}. Rather than specifying a numeric literal such as atNames{3}, you can use a numeric variable to indicate which element of an array you are addressing.
Using the iteration provided by a loop structure (For...End for, Repeat...Until or While...End whileBoolean Commands), compact pieces of code can address all or part of the elements in an array.
There are other 4D commands that can create and work with arrays. More particularly:
Product: 4D
Theme: Arrays
ARRAY BOOLEAN
ARRAY DATE
ARRAY INTEGER
ARRAY LONGINT
ARRAY PICTURE
ARRAY POINTER
ARRAY REAL
ARRAY STRING
ARRAY TEXT
Arrays
Two-dimensional Arrays