Skip to main content

So kannst du Java Arrays anlegen

Java Arrays– Was ist das?
Stell es dir einmal als ein Bücherregal vor.

In einem Bücherregal befinden sich sämtliche Bücher.
Und diese befinden sich schön nebeneinander.

Jedes Buch hat seinen festen Platz.
Du kannst die Bücher ganz genau lokalisieren.
Zum Beispiel kannst du sagen.
Das erste Buch von links
Das dritte von rechts usw.

Und so ein Java Array ist etwas Ähnliches.
Ein Array ist eine Art Regal, wo Datentypen des gleichen Wertes gespeichert werden können.

Und wenn diese dort gespeichert sind, kannst du die Werte über einen Index abrufen.

Aber dazu gleich mehr.

Lass uns erst einmal so ein Java Array anlegen.

So kannst du Java Arrays anlegen.

Eine Variable wird immer so deklariert.
int a;

In diesem Fall wurde eine Variable vom Datentyp Integer angelegt.

Es wurde somit ein Speicherplatz, in Höhe eines Integer-Datentyp, im Speicher reserviert.

Und dieser reservierte Speicherplatz wird intern unter den Namen a geführt.

Und wenn du jetzt ein Array anlegen möchtest, welches Integer-Werte speichert – Dann machst du das ganz ähnlich.


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray; //Referenzvariable erstesArray

}
}

Du siehst die beiden eckigen Klammern?
Dies signalisiert Java: Achtung hier wird kein primitiver Datentyp angelegt, sondern ein Array.

Und dieses Array könnte nun Integer Werte speichern.

Ja aber nur fast.
Denn so ein Array ist auch ein Referenzdatentyp.

Das heißt.
Du hast jetzt den Zeiger oder wie ich es nenne, die Fernbedienung angelegt.

Du musst somit noch explizit das Array anlegen, auf welches die Referenzvariable „erstesArray“ zeigt.

Und so geht’s:


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray; //Referenzvariable erstesArray
erstesArray=new int[3];//Variable zeigt auf ein neues Array mit Länge 3
}
}

Das Java Keyword new signalisiert auch hier:
Achtung neues Array wird angelegt.

Dann folgt noch einmal der Datentyp.
In diesem Fall Integer.

Und dann folgen die rechteckigen Klammern.
In den Klammern wird eine Zahl eingetragen.
Diese Zahl signalisiert die Länge des Arrays.

Oder anders gesagt.
Die drei bedeutet: Dieses Array kann drei Integer-Werte aufnehmen.
Kein Double, keine Strings – nein nur Integer.

Aber natürlich kannst du für jeden Datentypen eigene Arrays anlegen:


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray; //Referenzvariable erstesArray
erstesArray=new int[3];//Variable zeigt auf ein neues Array mit Länge 3
double [] zweitesArray = new double [12]; //Double-Array
String [] drittesArray = new String [3]; //String Array
}
}

Jetzt haben wir die ersten drei Java Arrays erstellt.
Lass uns diese einmal füllen.

Und so greifst du jetzt auf deine Java Arrays zu

Du ahnst es.

Jedes Element im Array eine Nummer.
Diese Nummerierung nennt sich Index.

Und das „ersteArray“ hat Platz für drei Elemente.
Somit gibt es drei Indizes.

Diese beginnen bei Null.
Ja, du liest richtig – bei Null.

Und wenn diese bei Null beginnen- Dann enden diese auch nicht bei drei, sondern bei zwei.

Um jetzt auf das erste Element des „erstenArray“ zugreifen zu können, setzt du den jeweiligen Index in rechteckige Klammern.
Und dann weist du dem Element einfach einen Wert zu.
Fertig.

Und so geht’s.


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray; //Referenzvariable erstesArray
erstesArray=new int[3];//Variable zeigt auf ein neues Array mit Länge 3
 
erstesArray [0]=3; // Erstes Element wurde angelegt.
erstesArray [1]=15; //Zweites Element
erstesArray [2]=23; //Drittes Element
 
}
}

Du siehst das Element mit Index 0 hat den Wert 3 bekommen.
Das Element mit dem Index 1 hat den Wert 15 bekommen.
Usw.

Um die Werte wieder abzurufen, gehst du genauso vor.
Du schreibst den Namen des Array.
Setzt die Klammer.
Und in die Klammer den Index.


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray; //Referenzvariable erstesArray
erstesArray=new int[3];//Variable zeigt auf ein neues Array mit Länge 3
 
erstesArray [0]=3; // Erstes Element wurde angelegt.
erstesArray [1]=15; //Zweites Element
erstesArray [2]=23; //Drittes Element
 
System.out.println(erstesArray[0]); //Bildschirmausgabe = 3
 
}
}

Wenn du jetzt einmal „Run“ klickst, bekommst du den Wert zurück.
Na klar du lässt dir den Wert des Java Arrays „erstesArray“ an der Stelle Null zurückgeben.
Und dieser Wert ist nun einmal 3.

Da in diesem Array echte Integer-Werte stecken, lässt sich damit auch rechnen.

Es ist eigentlich ganz einfach. 🙂

Lass uns doch einmal den Wert zum Index 1 und 2 miteinander multiplizieren.
So sieht der Java Code dazu aus:


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray =new int[3];
 
erstesArray [0]=3; 
erstesArray [1]=15; 
erstesArray [2]=23; 
 
System.out.println(erstesArray[1]*erstesArray[2]); //Bildschirmausgabe = 345
 
}
}

Na was kommt heraus?
Klar 345 , denn 15 multipliziert mit 23 ist 345.

Nicht schlecht, oder? 🙂

Was bleibt nach zu sagen?
Aja….

Alle Java Arrays sind Referenzdatentypen

Ich habe es eingangs erwähnt.
Wenn du eine Referenzvariable anlegst, zeigt ein Zeiger oder eine Fernbedienung auf das Array.

Genauso wie bei Java Objekten können mehrere Zeiger auf ein Objekt zeigen.


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray =new int[3];
int[] zweitesArray=erstesArray; //zweiter Zeiger auf erstes Array
 
}
}

Und wenn du mit einer zweiten Fernbedienung das Array füllst…..
Dann sollte dir eins bewusst sein.
Du greifst immer noch auf das selbe Array zu.
Genau wie die andere Fernbedienung.

Oder besser am Beispiel:
Wenn du jetzt über die Referenzvariable „erstesArray“ einen Integer Wert in das Array schiebst.


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray =new int[3];
int[] zweitesArray=erstesArray; //zweiter Zeiger auf erstes Array
 
erstesArray[1]=2223; //Wertzueisung für Index 1
}
}

Und diesen dann über die andere Fernbedienung („zweitesArray“) abfragst, na dann….


public class ArrayTest {
 
public static void main(String[] args) {
int[] erstesArray =new int[3];
int[] zweitesArray=erstesArray; //zweiter Zeiger auf erstes Array
 
erstesArray[1]=2223; //Wertzueisung für Index 1
System.out.println(zweitesArray[1]);
}
}

Dann greifst du lediglich auf das gleiche Element zu.
Du hältst lediglich eine andere Fernbedienung in der Hand.

Zusammenfassung:

  • In einem Java Array kannst du mehrere Werte vom gleichen Datentyp speichern.
  • Die einzelnen Werte werden nach einem Index zugeordnet.
    Mit diesem Index kannst du das Array füllen.
    Und du kannst die Werte mittels diesem Index wieder abrufen.
  • Dabei ist wichtig: Sämtliche Java Arrays beginnen mit dem Index 0.

Na wie hat dir dieser Artikel gefallen?
Vielleicht hast du Anmerkungen oder Ergänzungen.
Lass es mich wissen und schreibe einen Kommentar unter diesen Beitrag.


Ähnliche Beiträge

So kannst du Java Konstruktoren anlegen und überladen

Java Konstruktoren

Der Name sagt es schon. Java Konstruktoren konstruieren oder bauen Java Objekte. Und diese Objekte baut der Konstruktor auf Vorlage der entsprechenden Java Klasse. In diesem Beitrag zeige ich dir natürlich verschiedene Ansätze wie du den Konstruktor einsetzt. Ich zeige dir dies Schritt für Schritt. Dabei zeige ich dir auch verschiedene Dinge, welche nicht funktionieren. […]

So kannst du in drei einfachen Schritten Java Arrays dynamisch vergrößern

Java Arrays vergrößern

Es ist der 31.März 1727. Es ist ein Montag. Die Welt nimmt Abschied von einem sehr bedeutenden Weltveränderer. Seine Sichtweisen beeinflussen, heute noch, die Forschung und Entwicklung im Bereichen der Physik und Chemie. Ja selbst unser aller Leben – unsere Sicht auf die alltäglichen Dinge – wurden durch seine Denkstöße revolutioniert. Dieser große Vorreiter starb […]

So implementierst du Instanzmethoden in deine Java Klasse

Java Instanzmethoden

In einen der letzten Beiträge habe ich dir gezeigt, wie du eine Klasse anlegen kannst. Ich habe die Klasse „Mensch“ oder „Human“ angelegt und wir haben die erste Instanzvariable implementiert. Dein Code sollte jetzt so aussehen: public class Human { int size=156;//size in centimeter } In diesem Beitrag werde ich dir zeigen, wie du Java […]

Verwalte deine Java Klassen in packages

java klassen verwalten

Es macht durchaus Sinn deine Java Klassen in verschiedenen Paketen zu organisieren. Wieso? Es sprechen mehrere Gründe dafür: Du kannst doppelte Klassennamen verwenden Du kannst deinen Code oder deine Klassen inhaltlich trennen Du kannst Hierarchien abbilden. Und genau um diese Dinge geht es in diesem Beitrag

Java Übung 31: Speichere deine Würfe im Array

Java Übung Array Würfelspiel

In dieser Java Übung soll ein Würfelspiel simuliert werden. Lege eine Klasse namens, Würfelspiel an. Diese Klasse enthält eine statische Methode, namens würfeln(). Diese Methode erwartet einen Parameter vom Datentyp Integer, namens „anzahlWuerfe“. Diese Variable/Parameter repräsentiert die Anzahl der Würfe. Nachdem der Methode die Anzahl der Würfe übergeben wurde, soll die Methode Zufallszahlen zwischen 1 […]

So kannst du zweidimensionale Java Arrays anlegen und nutzen

Java Arrays zweidimensional

Eines der bedeutendsten Instrumente in der Mathematik ist das Koordinatensystem. Die gedankliche Grundlage dieses Werkzeuges lieferte der französische Naturwissenschaftler und Philosoph Rene Descartes. Man muss sich einmal verdeutlichen, was dies für die damalige Zeit bedeutete. Bisher wurden mathematische Probleme lediglich durch Berechnungen gelöst. Denke an geometrische Figuren, wie Dreiecke und Vierecke. Der Umfang wurde lediglich […]

Java Methoden mit variabler Argumentenanzahl – VarArgs

Java Methoden mit variabler Argumentenanzahl VarArgs

Du kennst das noch. Kopfrechnen und zwar auf Zeit. So etwas ist das Standardprogramm in den Schulklassen 1 bis 5. Irgendwann, in Klasse 6 oder 7, kommt der Taschenrechner ins Spiel und Kopfrechnen ist aus dem Schulalltag gestrichen. Schade eigentlich. Dabei kann man diese Disziplin auch wunderbar in kleinen Spielen unterbringen. Ich erinnere mich noch: […]