Array: Unterschied zwischen den Versionen
Zeile 16: | Zeile 16: | ||
''Zu beachten ist:'' | ''Zu beachten ist:'' | ||
'' | * ''Arrays fangen grundsätzlich mit dem '''Index 0''' an.'' | ||
'' | * ''Der letzte Index ist deswegen eins niedriger als die Länge des Arrays.'' | ||
=Vorteile und Nachteile = | =Vorteile und Nachteile = | ||
* '''Vorteil:''' In einem Array kann man jedes einzelne Element über eine Nummer, den sog. '''Index''', direkt ansprechen. | |||
* '''Nachteil:''' Man muss direkt zu Anfang die Größe des Arrays festlegen. D.h. man kann nicht nachträglich beliebig viele Elemente hinzufügen. | |||
=Arrays in Java= | =Arrays in Java= | ||
== Ein Array deklarieren== | == Ein Array deklarieren== | ||
'''Beispiel:''' | '''Beispiel:''' Hier werden '''deklariert''': | ||
* ein Array für Strings, | |||
* ein Array für Objekte vom Typ <code>Person</code> | |||
* ein Array für Integer-Zahlen: | |||
<code> | <code> | ||
Zeile 34: | Zeile 39: | ||
''Damit ist noch nicht die Länge des Arrays festgelegt und es ist noch nichts eingetragen! Das Array hat so den Wert <code>null</code>''. | ''Damit ist noch nicht die Länge des Arrays festgelegt und es ist noch nichts eingetragen! Das Array hat so den Wert <code>null</code>''. | ||
==Ein Array als leeres Array initialisieren== | ==Ein Array als leeres Array initialisieren== | ||
'''Beispiel:''' Ein Array mit 5 Plätzen für Strings, ein Array mit 10 Plätzen für Objekte vom Typ <code>Person</code> | '''Beispiel:''' Hier werden als leeres Array ''initialisiert''': | ||
* Ein Array mit 5 Plätzen für Strings, | |||
* ein Array mit 10 Plätzen für Objekte vom Typ <code>Person</code> | |||
* ein Array mit 200 Plätzen für Integer-Zahlen: | |||
<code> | <code> | ||
Zeile 44: | Zeile 53: | ||
</code> | </code> | ||
'' | * ''In den Arrays <code>namen</code> und <code>personen</code> sind damit 5 (bzw. 10) '''leere''' Plätze entstanden - dort steht als Wert jeweils <code>null</code>. '' | ||
* ''Im Array <code>zahlen</code> dagegen ist 200mal die Zahl 0 eingetragen.'' | |||
==Ein Array mit vorgegebenen Werten initalisieren== | |||
Oft weiß man schon bei der Deklaration eines Arrays, welche Werte es haben soll. Das lässt sich in Java wie folgt realisieren. | |||
'''Beispiel:''' Die folgende Tabelle soll als Array <code>namen</code> '''initialisiert''' werden: | |||
{| class="wikitable" | |||
|- | |||
!| Index ||0||1||2||3||4 | |||
|- | |||
|<b>Wert</b>|| "Meier" || "Schmidt" || "Müller" || "Franzen" || "Altenburg" | |||
|} | |||
'' | |||
<code> | |||
String[] namen = {"Meier", "Schmidt", "Müller", "Franzen", "Altenburg"}; | |||
</code> | |||
==Einzelne Elemente in einem Array ansprechen== | |||
'''Beispiel:''' | |||
{| class="wikitable" | |||
|- | |||
!| Index ||0||1||2||3||4 | |||
|- | |||
|<b>Wert</b>|| "Meier" || "Schmidt" || "Müller" || "Franzen" || "Altenburg" | |||
|} | |||
Der folgende Code... | |||
* liest den Wert bei Index 3 in die Variable <code>derName</code> aus, | |||
* trägt am Index 2 den Wert "Marten" ein. | |||
<code> | |||
String derName = namen[3]; | |||
// derName enthaelt jetzt den Wert "Franzen" | |||
namen[2] = "Marten" | |||
</code> | |||
D.h. das Array sieht jetzt so aus: | |||
{| class="wikitable" | |||
|- | |||
!| Index ||0||1||2||3||4 | |||
|- | |||
|<b>Wert</b>|| "Meier" || "Schmidt" || <b>"Marten"</b> || "Franzen" || "Altenburg" | |||
|} | |||
==Ein Array mit einer <code>for</code>-Schleife durchlaufen== | |||
Um ein Array von Anfang bis Ende zu durchlaufen, nimmt man eine <code>for</code>-Schleife. | |||
Beispiel: Der folgende Code gibt alle Werte des Array <code>namen</code> an die Konsole aus. | |||
<code> | |||
String[] namen = {"Meier", "Schmidt", "Müller", "Franzen", "Altenburg"}; | |||
for(int i=0; i<namen.length; i++){ | |||
System.out.println(namen[i]); | |||
} | |||
</code> | |||
==Ein Array mit einer <code>for</code>-Schleife initialisieren== | |||
Man kann die Werte eines Arrays auch mit einer <code>for</code>-Schleife initialisieren. | |||
'''Beispiel:''' | |||
Der folgende Code initalisiert die Werte des Arrays <code>dreierReihe</code> mit den Zahlen 0, 3, 6, 9, ..., 3000 | |||
<code> | |||
int[]dreierReihe = new int[1001]; | |||
for(int i=0; i<dreierReihe.length; i++){ | |||
dreierReihe[i] = i*3; | |||
} | |||
</code> |
Version vom 3. März 2013, 21:38 Uhr
Arrays dienen zur Speicherung von vielen gleichartigen Elementen (z.B. Zahlen) oder Objekten (z.B. vom Typ Person
).
Veranschaulichung
Hier ist ein Array mit 5 Namen (in Java: String
) dargestellt:
Index | 0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|---|
Wert | "Meier" | "Schmidt" | "Müller" | "Franzen" | "Altenburg" |
Zu beachten ist:
- Arrays fangen grundsätzlich mit dem Index 0 an.
- Der letzte Index ist deswegen eins niedriger als die Länge des Arrays.
Vorteile und Nachteile
- Vorteil: In einem Array kann man jedes einzelne Element über eine Nummer, den sog. Index, direkt ansprechen.
- Nachteil: Man muss direkt zu Anfang die Größe des Arrays festlegen. D.h. man kann nicht nachträglich beliebig viele Elemente hinzufügen.
Arrays in Java
Ein Array deklarieren
Beispiel: Hier werden deklariert:
- ein Array für Strings,
- ein Array für Objekte vom Typ
Person
- ein Array für Integer-Zahlen:
String[] namen;
Person[] personen;
int[] zahlen;
Damit ist noch nicht die Länge des Arrays festgelegt und es ist noch nichts eingetragen! Das Array hat so den Wert null
.
Ein Array als leeres Array initialisieren
'Beispiel: Hier werden als leeres Array initialisiert:
- Ein Array mit 5 Plätzen für Strings,
- ein Array mit 10 Plätzen für Objekte vom Typ
Person
- ein Array mit 200 Plätzen für Integer-Zahlen:
String[] namen = new String[5];
Person[] personen = new Person[10];
int[] zahlen = new int[200];
- In den Arrays
namen
undpersonen
sind damit 5 (bzw. 10) leere Plätze entstanden - dort steht als Wert jeweilsnull
. - Im Array
zahlen
dagegen ist 200mal die Zahl 0 eingetragen.
Ein Array mit vorgegebenen Werten initalisieren
Oft weiß man schon bei der Deklaration eines Arrays, welche Werte es haben soll. Das lässt sich in Java wie folgt realisieren.
Beispiel: Die folgende Tabelle soll als Array namen
initialisiert werden:
Index | 0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|---|
Wert | "Meier" | "Schmidt" | "Müller" | "Franzen" | "Altenburg" |
String[] namen = {"Meier", "Schmidt", "Müller", "Franzen", "Altenburg"};
Einzelne Elemente in einem Array ansprechen
Beispiel:
Index | 0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|---|
Wert | "Meier" | "Schmidt" | "Müller" | "Franzen" | "Altenburg" |
Der folgende Code...
- liest den Wert bei Index 3 in die Variable
derName
aus, - trägt am Index 2 den Wert "Marten" ein.
String derName = namen[3];
// derName enthaelt jetzt den Wert "Franzen"
namen[2] = "Marten"
D.h. das Array sieht jetzt so aus:
Index | 0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|---|
Wert | "Meier" | "Schmidt" | "Marten" | "Franzen" | "Altenburg" |
Ein Array mit einer for
-Schleife durchlaufen
Um ein Array von Anfang bis Ende zu durchlaufen, nimmt man eine for
-Schleife.
Beispiel: Der folgende Code gibt alle Werte des Array namen
an die Konsole aus.
String[] namen = {"Meier", "Schmidt", "Müller", "Franzen", "Altenburg"};
for(int i=0; i<namen.length; i++){
System.out.println(namen[i]);
}
Ein Array mit einer for
-Schleife initialisieren
Man kann die Werte eines Arrays auch mit einer for
-Schleife initialisieren.
Beispiel:
Der folgende Code initalisiert die Werte des Arrays dreierReihe
mit den Zahlen 0, 3, 6, 9, ..., 3000
int[]dreierReihe = new int[1001];
for(int i=0; i<dreierReihe.length; i++){
dreierReihe[i] = i*3;
}