Grundlagen von Arrays

Flash Player 9 und höher, Adobe AIR 1.0 und höher

Beim Programmieren müssen Sie häufig anstelle eines einzelnen Objekts eine Gruppe von Objekten bearbeiten. In einer Anwendung für einen Audio-Player kann es beispielsweise wünschenswert sein, eine Wiedergabeliste für Musiktitel zu erstellen. Es wäre unpraktisch, eine separate Variable für jeden Musiktitel in der Liste erstellen zu müssen. Stattdessen sollten sich alle Musiktitel-Objekte zusammen in einem Paket befinden, sodass Sie sie als Gruppe verwenden können.

Bei einem Array handelt es sich um ein Programmierelement, das als Container für eine Gruppe von Objekten dient, z. B. für eine Wiedergabeliste mit Musiktiteln. In der Regel sind alle Elemente in einem Array Instanzen derselben Klasse; dies ist in ActionScript jedoch nicht zwingend erforderlich. Die einzelnen Objekte in einem Array werden als Elemente bezeichnet. Sie können sich ein Array als Aktenschublade für Variablen vorstellen. Variablen können dem Array als Elemente hinzugefügt werden, wie Ordner in die Aktenschublade gelegt werden. Sie können das Array wie eine einzelne Variable verwenden (so wie Sie beispielsweise die ganze Schublade an einen anderen Ort tragen können). Sie haben die Möglichkeit, die Variablen als Gruppe zu bearbeiten (vergleichbar mit dem Suchen nach Informationen, indem Sie die Ordner nacheinander durchblättern). Außerdem ist der Zugriff auf einzelne Variablen möglich (Öffnen der Schublade und Auswahl eines einzelnen Ordners).

Beispiel: Sie erstellen eine Anwendung für einen Audio-Player, in der ein Benutzer mehrere Musiktitel auswählen und einer Wiedergabeliste hinzufügen kann. Ihr ActionScript-Code enthält eine Methode namens addSongsToPlaylist() , der als Parameter ein einzelnes Array übergeben wird. Unabhängig von der Anzahl der zur Wiedergabeliste hinzugefügten Musiktitel (einige, viele oder nur ein Musiktitel) muss die addSongsToPlaylist() -Methode nur ein Mal aufgerufen werden. Dabei wird das Array mit den Song-Objekten übergeben. In der addSongsToPlaylist() -Methode können die Elemente des Arrays (die Musiktitel) in einer Schleife ablaufen und der Wiedergabeliste hinzugefügt werden.

Am häufigsten tritt in ActionScript das sogenannte indizierte Array auf. Bei einem indizierten Array wird jedes Element an einer nummerierten Position gespeichert ( Index genannt). Der Zugriff auf die Elemente erfolgt über die Nummer, die die Funktion einer Adresse hat. Indizierte Arrays können für die meisten Programmieranforderungen eingesetzt werden. Zum Repräsentieren eines indizierten Arrays wird häufig die Array-Klasse verwendet.

Oft dient ein indiziertes Array zum Speichern von mehreren Elementen desselben Typs (also von Objekten, die Instanzen derselben Klasse sind). Die Array-Klasse bietet keine Möglichkeit, den Typ der in ihr enthaltenen Elemente einzuschränken. Mit der Vector-Klasse kann ein indiziertes Array erstellt werden, in dem alle Elemente denselben Typ aufweisen. Bei Verwendung einer Vector-Instanz anstelle einer Array-Instanz können auch Leistungsverbesserungen und andere Vorteile erzielt werden. Die Vector-Klasse ist verfügbar ab Flash Player 10 und Adobe AIR 1.5.

Eine besondere Art eines indizierten Arrays ist ein mehrdimensionales Array . Bei einem mehrdimensionalen Array handelt es sich um ein indiziertes Array, dessen Elemente ebenfalls indizierte Arrays sind (die wiederum andere Elemente enthalten).

Ein anderer Array-Typ ist das assoziative Array , in dem einzelne Elemente mit einem Stringschlüssel und nicht mit einer numerischen Indexposition identifiziert werden. Schließlich gehört zu ActionScript 3.0 noch die Dictionary-Klasse, die ein Wörterbuch repräsentiert. Ein Wörterbuch ist ein Array, in dem Sie jeden Objekttyp als Schlüssel verwenden können, um verschiedene Elemente zu unterscheiden.

Wichtige Konzepte und Begriffe

In der folgenden Referenzliste sind wichtige Begriffe aufgeführt, die Ihnen beim Programmieren von Array- und Vektorverarbeitungsroutinen begegnen:

Array
Ein Objekt, das als Container zum Gruppieren mehrerer Objekte dient.

Array-Zugriffsoperator ([])
Eckige Klammern, die eine Indexposition oder einen Schlüssel umgeben, der ein Array-Element eindeutig identifiziert. Diese Syntax wird nach einem Array-Variablennamen verwendet, um statt des ganzen Arrays ein einzelnes Element des Arrays anzugeben.

Assoziatives Array
Ein Array mit Stringschlüsseln zum Identifizieren der einzelnen Elemente.

Basistyp
Der Datentyp der Objekte, die in einer Vector-Instanz gespeichert werden können.

Wörterbuch
Ein Array, dessen Elemente sich aus Objektpaaren zusammensetzen, die als Schlüssel und Wert bezeichnet werden. Der Schlüssel wird anstelle eines numerischen Indexes zum Identifizieren eines einzelnen Elements verwendet.

Element
Ein einzelnes Objekt in einem Array.

Index
Die numerische „Adresse“ zum Identifizieren eines einzelnen Elements in einem indizierten Array.

Indiziertes Array
Der Standardtyp für Arrays, in dem jedes Element an einer nummerierten Position gespeichert wird und bei dem die einzelnen Elemente anhand der Nummer (des Indexes) identifiziert werden.

Schlüssel
Der String oder das Objekt zum Identifizieren eines einzelnen Elements in einem assoziativen Array oder einem Wörterbuch.

Mehrdimensionales Array
Ein Array mit Elementen, die selbst Arrays und keine Einzelwerte sind.

T
Die Standardkonvention, mit der in dieser Dokumentation der Basistyp einer Vector-Instanz angegeben wird. Die T-Konvention repräsentiert einen Klassennamen, wie in der Beschreibung des Type-Parameters gezeigt. („T“ steht für „Typ“, wie in „Datentyp“.).

Type-Parameter
Die Syntax, mit der der Vector-Basistyp im Vector-Klassennamen angegeben wird (der Datentyp der gespeicherten Objekte). Die Syntax besteht aus einem Punkt ( . ) gefolgt vom Namen des Datentyps in spitzen Klammern ( <> ). Daraus ergibt sich folgende Angabe: Vector.<T> . In dieser Dokumentation wird die im Type-Parameter angegebene Klasse generisch durch T repräsentiert.

Vektor
Ein Array-Typ, bei dem alle Elemente Instanzen desselben Datentyps sind.