Lernpfad:Einführung in Git/11: Unterschied zwischen den Versionen
Jneug (Diskussion | Beiträge) |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 31: | Zeile 31: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Bei bis zu drei Dimensionen kann man sich das Array noch gut vorstellen (zweidimensional: Tabelle, dreidimensional: Würfel), aber ab vier Dimensionen wird die Handhabung sehr kompliziert. | Bei bis zu drei Dimensionen kann man sich das Array noch gut vorstellen (zweidimensional: Tabelle, dreidimensional: Würfel), aber ab vier Dimensionen wird die Handhabung sehr kompliziert. Arrays mit mehr als drei Dimensionen setzt man daher nur in Spezialfällen ein. | ||
<syntaxhighlight lang="Java" line="1"> | |||
int[][] zweidim = new int[4][4]; | |||
</syntaxhighlight> | |||
{| class="wikitable text-center" style="margin:0 auto;" | |||
! !! 0 !! 1 !! 2 !! 3 | |||
|- | |||
! 0 || (0,0) || (1,0) || (2,0) || (3,0) | |||
|- | |||
! 1 || (0,1) || (1,1) || (2,1) || (3,1) | |||
|- | |||
! 2 || (0,2) || (1,2) || (2,2) || (3,2) | |||
|- | |||
! 3 || (0,3) || (1,3) || (2,3) || (3,3) | |||
|} |
Version vom 30. August 2020, 15:16 Uhr
Objektarrays
Arrays können nicht nur primitive Datentypen speichern, sondern auch Objekte. Jedes Element ist dann eine Referenz auf eine Objektinstanz der deklarierten Klasse. Dabei können einzelne Indizes des Arrays auch auf dasselbe Objekt referenzieren. Ein Array ist aber auf Objekte einer Klasse beschränkt, die bei der Deklaration angegeben werden muss.
Random[] wuerfel = new Random[6];
wuerfel[4] = new Random();
wuerfel[0] = new Random();
wuerfel[2] = new Random();
wuerfel[1] = wuerfel[4];
wuerfel[3] = wuerfel[2];
Der gezeigte Quelltext würde beispielsweise folgendes Array erzeugen:
Eine Änderung an dem Objekt r1
kann hier mit wuerfel[1]
oder wuerfel[4]
erfolgen.
Mehrdimensionale Arrays
Da ein Array-Element auch ein komplexer Datentyp sein kann, kann jedes Array-Element auch selber wieder ein Array sein. Das erlaubt die Erzeugung zwei-, drei, oder n-dimensionaler Arrays.
int[][][] dreidim = new int[3][3][3];
dreidim[0][0][0] = 1;
dreidim[1][0][2] = 2;
dreidim[2][2][2] = 3;
Bei bis zu drei Dimensionen kann man sich das Array noch gut vorstellen (zweidimensional: Tabelle, dreidimensional: Würfel), aber ab vier Dimensionen wird die Handhabung sehr kompliziert. Arrays mit mehr als drei Dimensionen setzt man daher nur in Spezialfällen ein.
int[][] zweidim = new int[4][4];
0 | 1 | 2 | 3 | |
---|---|---|---|---|
0 | (0,0) | (1,0) | (2,0) | (3,0) |
1 | (0,1) | (1,1) | (2,1) | (3,1) |
2 | (0,2) | (1,2) | (2,2) | (3,2) |
3 | (0,3) | (1,3) | (2,3) | (3,3) |