Der Gambas-Interpreter bietet Ihnen zwei Arten von nativen Container-Klassen.
Eine Collection ist eine Sammlung von Elementen, die über einen Schlüssel vom Typ String indiziert werden → Kapitel 7.5 Collection. Nur Elemente vom Datentyp 'Variant' können in einer Collection gespeichert werden. Die Werte werden intern in einer Hash-Tabelle gespeichert, die dynamisch wächst, wenn mehr Elemente in sie eingefügt werden.
Ein Array ist eine Menge von Elementen, die über einen Schlüssel vom Typ Integer indiziert werden und in einem Speicher-Block gespeichert sind. Alle Elemente in einem Array haben den gleichen Datentyp und es gibt eine Array-Klasse für jeden nativen Datentyp.
Arrays können ein- und mehrdimensional sein. Sind sie mehrdimensional, werden die Elemente von mehr als einem Integer-Wert indiziert. Wenn ein Array genau eine Dimension besitzt, dann kann es mit der Resize()-Methode dynamisch verkleinert oder erweitert werden.
Die Kapitel 7.4.0 bis 7.4.9 widmen sich nicht nur der allgemeinen Klasse Array mit seinen Eigenschaften und Methoden, sondern geben auch einen Ein- und Überblick zu den folgenden Themen, wobei die Reihenfolge keine Rangfolge impliziert:
Die Klasse Array (gb) ist die Eltern-Klasse für jede andere Array-Klasse. Ein Array ist als Daten-Container aufzufassen, auf dessen Elemente mit einem numerischen Schlüssel (Index) zugegriffen werden kann.
Die Klasse Array (gb) verfügt über diese Eigenschaften:
Eigenschaft | Datentyp | Beschreibung |
---|---|---|
Bounds | Array.Bounds | Es wird eine virtuelle Klasse zurückgegeben. Die Anzahl der Dimensionen eines Arrays wird durch die Eigenschaft Array.Bounds.Count angegeben und die Größe der N-ten Dimension kann man über Array.Bounds[N] abfragen. |
Count | Integer | Anzahl der Elemente im Array. |
Length | Integer | Anzahl der Elemente im Array. Die Eigenschaften Count und Length werden synonym verwendet. |
Data | Pointer | Zeiger auf die Array-Daten. |
Dim | Integer | Anzahl der Dimension eines Arrays. |
Max | Integer | Größter Index eines Arrays. Dabei gilt: Array.Max = Array.Count - 1. |
Type | Integer | Typ der Daten, die in ein Array eingefügt werden können → http://gambaswiki.org/wiki/cat/constant |
Tabelle 7.4.0.3.1: Eigenschaften der Klasse Array (gb)
Die Klasse Array (gb) verfügt über grundlegende Methoden und spezielle Methoden, die jedoch nicht für alle Array-Klassen zutreffen. Im nächsten Abschnitt werden die grundlegenden Methoden vorgestellt und beschrieben:
Methode | Beschreibung |
---|---|
Clear() | Löscht alle Elemente in einem Array. |
Remove ( Index As Integer [ , Length As Integer ] ) | Löscht ein oder mehrere Elemente in einem Array. |
Resize ( Size As Integer ) | Ändert die Größe (Anzahl der Elemente) eines Arrays. |
Tabelle 7.4.0.4.1 : Methoden 1 der Klasse Array (gb)
Hinweise:
In der folgenden Tabelle steht 'Array-Typ' immer für den Daten-Typ eines Elements im Array.
Gambas hat eine vordefinierte Array-Klasse für jeden nativen Datentyp → Kapitel 7.4.3.1. Der Name dieser Klassen ist der Name des Datentyps, dem eckige Klammern [] folgen.
Boolean[], Byte[], Short[], Integer[], Long[], Single[], Float[], Date[], String[], Object[], Pointer[] und Variant[]
Bitte beachten Sie die folgenden Hinweise, da nicht alle Arrays über alle u.a. Methoden verfügen:
Arrays können über diese Methoden in der folgenden Tabelle verfügen:
Tabelle 7.4.0.5.1 : Methoden 3 der Klasse Array
Artikel