2.15.2 | Struktur von Arrays |
Arrays sind in Java grundsätzlich eindimensional. Mehrdimensionale Arrays im Sinne von Pascal gibt es nicht.
Java kennt dagegen Arrays, die als Komponenten wieder Arrays besitzen. In diesem Sinne erscheint es angemessener, von geschachtelten statt von mehrdimensionalen Arrays zu sprechen. Anstelle mehrerer Dimensionen gibt es mehrere Schachtelungsebenen.
Da Array-Typen in Java keine feste Größe haben, können verschiedene Arrays mit demselben Typ unterschiedlich groß sein:// gleicher Typ, unterschiedliche Größe int[] a1 = new int[4], a2 = new int[10];Bei mehrdimensionalen Arrays, wie sie in einigen anderen Sprachen existieren, haben alle Arrays einer bestimmten Dimension dieselbe Größe. Da in Java die Größe kein Bestandteil des Typs ist, können die Unter-Arrays in geschachtelten Arrays dagegen unterschiedliche Längen aufweisen. Im übernächsten Abschnitt wird dieser Fall anhand eines pascalschen Dreiecks gezeigt.
Im Zusammenhang mit Arrays wird in der Terminologie zwischen Elementen und Elementtypen einerseits und Komponenten und Komponententypen andererseits unterschieden.
Die Bestandteile des Arrays, die über einen Index angesprochen werden, heißen Komponenten. Nachdem man sich schließlich durch alle Schachtelungsebenen hindurchgehangelt hat, kommt man bei Komponenten an, die keine Arrays sind. Diese Komponenten werden Elemente genannt. Ihr Typ heißt dementsprechend Elementtyp. Kompononenten können also Unter-Arrays, aber auch Elemente sein. Alle Elemente eines Arrays, auch eines geschachtelten, haben denselben Typ.