Java-Turtle - Felder
- Strukturierte Datentypen - Arrays, Felder
Als Wetterbeobachter sollen Sie stündlich die Temperatur ablesen und speichern! Es ergibt sich eine Messreihe pro Tag mit bereits 24 Einzelzellen für die Stunden. Für eine Woche benötigt man 7 weitere Zeilen, dann hat man bereits die Messwerttabelle mit 24 Spalten und 7 Zeilen. 4 solche Tabellen könnten nun wiederum übereinander liegend die Menge aller
Messwerte eines Monats darstellen (4 Wochen/Monat). Damit ist bereits ein Gebilde der 3. Dimension entstanden (Speicherquader). 4 solche Tabellen könnten nun wiederum übereinander liegend die Menge aller Messwerte eines Monats darstellen (4 Wochen/Monat). Damit ist bereits ein Gebilde der 3. Dimension entstanden (Speicherquader).
Im obigen Beispiel würden somit 24 Stunden x 7 Tagen x 4 Wochen x 12 Monate = 8064 einzelen Variablen notwendig.
Wir benötigen komplexe Datenstrukturen, in der eine große Anzahl von Werten des gleichen Typs gespeichert werden:
Lösung:
Feld - Array: Zusammenfassung Daten gleichen Typs - z.B. Temperatur/Stunde/Tag -> 24 Werte
Eindimensionales Array mit 10 Elementen:
Variablen anlegen: int[] zahlen = new int[10];
Ein Array kann man sich wie einen Zug mit Waggons vorstellen - möchte man einen Wert in den Wagon 3 ablegen: zahlen[3] = 12;
Effektiv kann man mit Zufallszahlen und Zählschleifen arbeiten: for( int i = 1; i < zahlen.length + 1; i++){ zahlen[i] = Math.round(Math.random()*100);
Inhal des Array effektiv mit einer Schleife ausgeben: for( int i = 1; i < zahlen.length + 1; i++){ System.out.println(zahlen[i]);
Variante 1 - Variablen sofort in das Array schreiben: int[] zahlen = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
Eindimensionale Arrays, kann man sich als Reihe vorstellen. In unserem Beispiel:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Bsp.: Zweidimensionales Array, welches Platz für 36 Werte vom Typ boolean bietet. Diese Art von Array nennt man Matrix. Sie ist in diesem Fall quadratisch, 6x6.

Übung ==
In diesen Übungen geht es darum, das bereits erworbene Wissen zu kombinieren und anhand dessen, Arrays zu verstehen.
Array manuell mit Werten füllen
Lege ein Array vom Typ int an. Es soll gleich bei der Deklaration angegeben werden, welche Werte darin stehen. Die Werte sind 1, 2 und 3. Nenne das Array zahlen.
Array fester Größe manuell befüllen
Lege nun ein Array mit einer festen Größe an. Die Größe soll 2 sein. Dann weise jeder Stelle ihren Wert zu. Stelle Eins soll 0 sein und Stelle 2 soll 1 sein. Nenne das Array bin.
- Array automatisch füllen
Lege ein Array für int Werte an. Es soll werte heißen. Es sollen 16 Werte darin gespeichert werden. Du musst also wiederholt eine Zahl an jede Stelle des Arrays schreiben. Fällt Dir beim Wort "Wiederholung" ein, welches Sprachmittel in Java dafür zur Verfügung steht? Die Zahlen müssen zwischen 0 und 15 liegen.
- Matrix - Einfaches Befüllen
Lege hier ein zweidimensionales Array vom Typ boolean an. Es soll den Namen matrix tragen. Fülle das Array automatisch mit Werten.
Hinweis:
Zeilenlänge : matrix.length
Spaltenlänge: matrix[0].length
Um zufällig einen Wert vom Typ boolean zu erzeugen, nutze diesen Aufruf.
new Random().nextBoolean() .- Addieren aller Elemente
Lege hier ein zweidimensionales Array vom Typ int an. Es soll den Namen matrix2 tragen. Fülle das Array automatisch mit Werten deiner Wahl. Wenn du die Matrix gefüllt hast sollst du mit 2 for-Schleifen durch die Matrix gehen und alle werte aufaddieren. Lege dir hierzu eine Hilfsvariable an, auf die die aktuelle Variable draufaddiert wird.
Hinweis:
Zeilenlänge : matrix2.length
Spaltenlänge : matrix2[0].length
Um zufällig einen Wert vom Typ int zu erzeugen, nutze diesen Aufruf.
new Random().nextInt() .