Content
Was ist ein Array?
- Ein Array ist eine Ansammlung von Werten des gleichen Datentyps.
- Das kann zum Beispiel eine reihe von Ganzzahlen sein: 1,45,2,25,1,23,5
- Arrays haben immer eine fixe Größe, die beim erstellen festgelegt werden muss
- Das heißt, ein Array bietet sovielen Elementen platz, wie beim erstellen angegeben wurde
Wie deklariert man ein Array
Ein Array deklariert man wie eine ganz normale Variable.
int[] array;
...deklaration eines Arrays dessen Elemente den Datentyp int haben sollen
- Ein Array dessen Elemente den Datentyp double haben sollen, deklariert man so:
double[] array;
...deklaration eines Arrays dessen Elemente den Datentyp double haben sollen
Z[] array;
...deklaration eines Arrays dessen Element den Datentyp Z (steht für beliebigen nicht primitiven Datentyp) haben sollen
Wie weist man nun dem Array einen Wert zu?
Nach dem wir das Array deklariert haben, müssen wir im nun auch einen Wert (ein erstelltes Array) zuweisen. So wie wir das bei normalen Variablen gemacht haben (int a; a = 10;)
Zuweisung eines leeren int Arrays mit der Größe 10 (Platz für 10 Elemente)
int array;
array = new int[10];
Zuweisung eines bereits befüllten int Arrays mit der Größe 10 (Platz für 10 Elemente)
int[] array;
array = new int[]{1,5,2,5,2,3,1,6,2,56};
Beispiele mit verschiedenen Datentypen (Deklaration und Zuweisung in einem)
int[] arr = new int[]{1,2,3,4};
double[] arr2 = new double[]{1.0,2.0,3.0,4.0};
String[] arr3 = new String[]{"asdf", "asdf2", "asdf3"};
Verändern des Wertes eines Arrays an einer beliebigen Stelle
int[] arr = new int[10];
arr[0] = 20;
arr[1] = 30;
arr[arr.length-1] = 40;
- Ein int Array wird deklariert und diesem ein leeres Array der größe 10 zugewiesen
- Der Wert an der ersten Stelle des Arrays wird auf 20 gesetzt (der Index bei Arrays fängt bei 0 an)
- Der Wert an der zweiten Stelle des Arrays wird auf 30 gesetzt
- Der Wert an der letzten Stelle des Arrays wird auf 40 gesetzt
- arr.length gibt an wie groß das Array ist. In diesem Fall ist es 10. Da das erste Element beim Index 0 startet ist das letzte nicht an Stelle 10, sondern an Stelle 9.
Abfragen des Wertes an einer beliebigen Stelle des Arrays
int[] arr = new int[]{1,2,3,4,5};
System.out.println(arr[0]);
int a = arr[1];
System.out.println(a);
System.out.println(arr[arr.length]);
- Ein int Array wird deklariert und diesem ein bereits befülltes Array mit den Werten 1,2,3,4,5 zugewiesen
- Der Wert des Arrays an der Stelle 0 wird ausgegeben
- Die Variable a wird deklariert und dieser der Wert des Arrays an der Stelle 1 zugewiesen
- Die Variable a wird ausgegeben
- Der Wert an der letzten Stelle des Arrays wird ausgegeben
Arrays und die for Schleife
- Ein Array bietet sich an um in einer for Schleife verwendet zu werden.
- Die Zählvariable startet bei 0
- Die Bedingung ist solange die Zählvariable kleiner der Länge des Arrays ist
int[] arr = new int[]{1,2,3,4,5,6,21,1,23,1,3};
for(int i=0; i<arr.length;i++) {
int tmp = arr[i];
System.out.println(tmp);
}
- Ein neues int Array wird deklariert und diesem wir ein befülltes int Array mit den Werten 1,2,3,4,5,6,21,1,23,1,3 zugewiesen
- Die for Schleife wird erstellt
- Eine int Variable mit dem Namen tmp wird deklariert und dieser der Wert des Arrays an der Stelle i zugewiesen (i ist die Zählvariable, diese nimmt die Werte 0,1,2,3,4,5,6,7,8,9,10 an)
- Die Variable tmp wird ausgegeben
Vollständige Beispiele
Bsp 1)
package at.htldornbirn.swp.example;
public class Example {
public static void main(String[] args) {
//Ein int Array wird deklariert und diesem ein leeres Array zugewiesen
int[] arr = new int[10];
//Der Wert an der Stelle 3 wird auf 10 gesetzt
arr[3] = 10;
//Ausgabe aller Elemente
for(int i=0; i<arr.length;i++) {
System.out.println(arr[i]);
}
}
}
Die Ausgabe des Programmes ist: 0 0 0 10 0 0 0 0 0 0 0
Bsp 2)
package at.htldornbirn.swp.example;
public class Example {
public static void main(String[] args) {
//Ein int Array wird deklariert und diesem ein leeres Array zugewiesen
int[] arr = new int[] {1,2,3,4,5,1,2,3,4,5};
//Aufruf der printArray Methode
printArray(arr);
//Der Variable arr wird ein neues Array zugewiesen
arr = new int[] {2,623,1,6,24,6};
//Erneuter Aufruf der printArray Methode
printArray(arr);
}
//Erstellen einer Methode, die alle Elemente eines int Arrays ausgibt
public static void printArray(int[] array) {
for(int i=0; i<array.length;i++) {
System.out.println(array[i]);
}
}
}
Die Ausgabe des Programmes ist: 1 2 3 4 5 1 2 3 4 5 2 623 1 6 24 6