veröffentlicht am: 26.04.2022 zuletzt aktualisiert am: 19.04.2023
Arrays in Java sind Objekte, die mehrere Werte desselben Datentypen speichern. In einem String-Array oder einem numerischen/integer Array werden String-Variablen oder Integer-Variablen gespeichert. Jedes Element wird dabei mit einem Indexwert gespeichert, d.h. „index-0“ steht für das erste Element, „index-1“ für das zweite Element des Arrays und so weiter. Der Index gibt uns dabei also eine Position an, um jedes Element (jeden Wert) innerhalb eines Java Arrays eindeutig identifizieren zu können.
Java unterstützt dabei verschiedene Operationen mit Arrays. Die Elemente der Java-Arrays können abgerufen oder die Array-Elemente aktualisiert/ersetzt werden. Dieser Artikel bietet eine anschauliche Anleitung zu den Java-Arrays mit den folgenden Lernergebnissen:
Die Java-Arrays können eindimensional oder mehrdimensional sein. Die Werte in eindimensionalen Arrays werden in linearer Reihenfolge gespeichert (einer nach dem anderen), während in mehrdimensionalen Arrays mehrere Array-Objekte gespeichert werden können.
Die Funktionsweise von Arrays in Java hängt stark von der Syntax ab. Wir schauen uns nun auf welche Art und Weisen Arrays in Java funktionieren.
Die folgende Syntax wird verwendet, um eine Array-Variable zu deklarieren.
datentyp[] arrayName; datentyp arrayName[];
In der Syntax steht das Schlüsselwort datentyp für den Datentyp der verwendeten Werte und die Klammern [] geben an, dass es sich um eine Array-Variable handelt.
Das Phänomen der Instanziierung erzeugt eine Instanz desselben Datentyps. Die Instanziierung wird mit dem new-Operator in Java durchgeführt und wird wie folgt dargestellt:
datentyp[] arrayName = new datentyp[3];
Der Datentyp muss auf beiden Seiten gleich sein. Dabei musst du in den eckigen Klammern die gewünschte Anzahl an Werten / Elementen die in der Array Variablen gespeichert werden soll angeben!
Achtung: Du kannst die Länge eines Arrays nach der Erstellung nicht mehr ändern!
Nach der Instanziierung werden die Werte in einem Array gespeichert; dieser Vorgang wird als Initialisierung bezeichnet.
arrayName[indexnummer] = wert;
Der angegebene Wert wird unter der angegebenen Indexnummer innerhalb unseres Arrays gespeichert.
Bonus-Tipp: Ein Array kann in einer einzeiligen Syntax deklariert, instanziiert und initialisiert werden. Die folgenden Syntaxverweise können in diesem Zusammenhang verwendet werden.
datentyp[] arrayName = {wert1, wert2, ...};
Sobald das Array initialisiert ist, ist sein Speicherplatz festgelegt und kann nicht mehr verändert werden.
Dieser Abschnitt beschreibt verschiedene Beispiele, die die Verwendung von Arrays in Java darstellen. Es werden eindimensionale und mehrdimensionale Aspekte bei der Erstellung von Arrays berücksichtigt. Außerdem haben wir verschiedene Operationen aufgeführt, die mit Arrays durchgeführt werden können.
Der folgende Java-Code demonstriert die Funktionsweise von eindimensionalen Arrays.
package newpack; public class Array { public static void main(String[] args) { // Deklaration und Instanziierung eines Java Arrays int[] n = new int[2]; // Erstes Element n[0] = 8; // Zweites Element n[1] = 16; // Ausgabe der Werte auf der Konsole System.out.println(n[0]); System.out.println(n[1]); } }
Wir haben für die Erstellung des Java Arrays also folgende Schritte durchgeführt:
Wenn wir den Code nun ausführen würden, würden wir folgende Konsolenausgabe erhalten:
Mehrdimensionale Arrays bedeuten die Speicherung von mehreren Arrays innerhalb eines Arrays. Der folgende Code macht die Verwendung von mehrdimensionalen Arrays deutlicher.
package newpack; public class Array { public static void main(String[] args) { String[][] meinMehrdArray = { { "EINS", "ZWEI" }, { "ZEHN", "ELF", "ZWÖLF" } }; System.out.println(meinMehrdArray[0].length); System.out.println(meinMehrdArray[1].length); } }
Lass uns nun Schritt-für-Schritt anschauen, was unser Code macht:
Der oben aufgeführte Code würde dabei folgende Konsolenausgabe erzeugen:
Wir können ein mehrdimensionales Array auch innerhalb einer einzelnen Zeile erstellen, jedoch ist die zuvor aufgeführte Variante die „saubere“.
String[][] meinMehrdArray= {{"EINS", "ZWEI"}, {"ZEHN", "ELF", "ZWÖLF"}};
Ein einzelnes Array-Element kann mit der Anweisung .println() auf der Konsole ausgegeben werden. Wenn jedoch Dutzende von Elementen in einem Array gespeichert sind, wird es mühsam, sie einzeln ausgeben zu lassen. In einem solchen Fall wird eine Schleife gebildet, um alle Elemente in einem Durchgang zu erhalten.
Schauen wir uns kurz nochmal die grundlegende Syntax einer for-Schleife an:
for(erstelleungDerVariable, bedingung, erstelleungDerVariable inkrementieren/dekrementieren){}
Die Funktionsweise der for-Schleife hängt von der Schleifenvariable ab und die Syntax kann wie folgt erklärt werden:
Schauen wir uns nun ein konkretes Beispiel dazu an:
package newpack; public class Array { public static void main(String[] args) { String[] meinSchreibtisch = { "Laptop", "Maus", "Tastatur", "Bildschirm" }; for (int a = 0; a < meinSchreibtisch.length; a++) { System.out.println(meinSchreibtisch[a]); } } }
Schauen wir uns nun an, was wir genau gemacht haben:
Wenn wir den Code nun ausführen, erhalten wir folgende Konsolenausgabe:
Wie wir sehen können, verwenden wir nun also nur eine prinln()-Anweisung, um uns mehrere Werte auf der Konsole ausgeben zu lassen!
Der folgende Java-Code zeigt, wie ein Element ersetzt/aktualisiert werden kann.
package newpack; public class Array { public static void main(String[] args) { String[] meinSchreibtisch = { "Laptop", "Maus", "Tastatur", "Bildschirm" }; meinSchreibtisch[2] = "Kaffeetasse"; for (int a = 0; a < meinSchreibtisch.length; a++) { System.out.println(meinSchreibtisch[a]); } } }
Wir haben also erneut den Index verwendet, um auf die gewünschte Position des Arrays zuzugreifen und den Wert zu aktualisieren. Dabei haben wir den Wert „Tastatur“ mit dem Wert „Kaffeetasse“ ersetzt.
Wir würden nun also folgende Konsolenausgabe erhalten:
Arrays haben eine feste Länge und diese kann nach der Erstellung nicht mehr verändert werden. Deshalb gibt es in Arrays keine direkte Methode, um ein Element aus einem Array zu löschen. Es gibt jedoch einen alternativen Weg, um Elemente aus einem Array zu entfernen. Dazu musst du die folgenden Schritte ausführen:
Zum besseren Verständnis haben wir den folgenden Java-Code benutzt, um Elemente aus einem Array zu entfernen.
import java.util.*; public class Main { public static void main(String[] args) { String[] meinSchreibtisch = { "Laptop", "Maus", "Tastatur", "Bildschirm" }; // Umwandlung in eine ArrayList List < String > neuerSchreibtisch = new ArrayList < > (Arrays.asList(meinSchreibtisch)); System.out.println(neuerSchreibtisch); // Verwendung der remove-Methode, um das Element "Tastatur" zu entfernen neuerSchreibtisch.remove("Tastatur"); System.out.println(neuerSchreibtisch); } }
Kurzgesagt, haben wir folgende Schritte angewandt, um das Element „Tastatur“ zu entfernen:
Wenn wir den obigen Code nun ausführen würden, würden wir folgende Ausgabe auf der Konsole erhalten:
Hinweis: Du kannst auch die removeAll()-Methode auf ArrayLists anwenden, welche alle Werte / Elemente innerhalb des Arrays entfernen würden.
Ein Array-Objekt kann mehrere Werte desselben Datentyps speichern. Er ist sehr hilfreich, wenn du eine Variable erstellst, um mehrere, ähnliche Elemente zu speichern. Dieser informative Leitfaden hilft dir, die Grundlagen von Java-Arrays und ihre Funktionsweise in verschiedenen Szenarien zu verstehen. Zum besseren Verständnis wird die Java-Syntax nacheinander erläutert. Außerdem wird in den Beispielen die Erstellung von ein- und mehrdimensionalen Arrays gezeigt und die Schleifenbildung in Arrays wird veranschaulicht, um sich das gesamte Array Element für Element auf der Konsole ausgeben zu lassen.
😩 Gelangweilt von den Udemy & YouTube-Tutorials?!
Lerne spielerisch Java und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.
"Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."
- Lennart Sparbier
100% kostenlos registrieren · keine Kreditkarte notwendig
Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.
100% kostenlos registrieren · keine Zahlungsdaten notwendig