Java

Java Array

Hier erfährst du, wie du ein eindimensionales oder mehrdimensionales Array erstellst und wie du auf dessen Elemente in Java zugreifst.

Du verstehst ein Thema besser, indem du es ganz einfach erklärt bekommst, anstatt einen Text zu lesen? Dann schau dir am Besten gleich unser Video an. %VERWEIS Java Array

Inhaltsübersicht

Arrays in Java einfach erklärt

Unter einem Array in Java versteht man einen Container, der eine feste Anzahl von Werten eines einzelnen Typs enthält. Bei der Deklaration wird von Beginn an ein konkreter Datentyp für das Array bestimmt, der dann nicht mehr verändert werden kann. Außerdem legst du die Länge des Arrays, die Array length, bei der Erstellung fest.  Innerhalb des Containers können dann mehrere Werte gespeichert werden, die dem jeweiligen Typ entsprechen. Dieser Prozess wird Initialisierung genannt. 

Java Array Aufbau

Das folgende Programm zeigt dir ein einfaches Beispiel für ein Java Array.

class JavaArray {
    public static void main(String[] args) {
        // Array deklarieren mit dem Datentyp Integer
        int[] arr;

        //Array besitzt einen Speicher für 4 Integer
        arr = new int[4];
           
        // Array initialisieren mit den Werten: 65, 5, 78, 22
        arr[0] = 65;
        arr[1] = 5;
        arr[2] = 78;
        arr[3] = 22;

        // Zugriff auf alle Werte des Arrays bzw. Ausgabe der Werte 
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        System.out.println(arr[3]);
    }
}

Die einzelnen Bestandteile werden im Laufe dieses Artikels genauer erläutert.

Über den Zugriff auf alle einzelnen Elemente des Arrays können entsprechend alle gespeicherten Werte des Container ausgegeben werden. 

Die Ausgabe des Programms lautet:

65
5
78
22

Array deklarieren – Java

Aber wie lässt sich ein Array deklarieren? Wir zeigen dir hierfür zwei Möglichkeiten. Die Syntax für die Deklaration eines Java Arrays kann beispielsweise folgendermaßen aussehen:

Datentyp[] arrayName = new Datentyp[Anzahl];

Datentyp arrayName[] = new Datentyp[Anzahl];

Wie du siehst, kannst du die eckigen Klammern entweder direkt hinter den Datentyp schreiben oder hinter den Namen des Arrays. Zusätzlich benötigst du für die Erzeugung des Arrays einen new Operator.

Die in der Praxis bevorzugte Variante baut sich hingegen so auf:

Datentyp[] arrayName;
arrayName = new Datentyp[Anzahl]

Hierbei wird die obere Anweisung in zwei einzelne Anweisungen aufgeteilt.

Beispiel

Schauen wir uns ein Beispiel an, wie du ein Array erstellst, das vier int Werte speichern kann. Hierfür gibt es zwei Möglichkeiten.

Java Array erstellen – Möglichkeit 1

int[] arr = new int[4];

oder

int arr[] = new int[4];
  • int: Durch den Integer wird der Datentyp festgelegt. Dadurch lassen sich nur ganzzahlige Werte speichern.

  • arr: ist der Name des Arrays. Diesen kannst du aber auch gerne durch einen anderen Namen ersetzen.

  • new:Der new Operator erzeugt ein Objekt.

  • int[4]:Datentyp int gefolgt von eckigen Klammern. In den Klammern gibst du die Anzahl der Werte an, wie viele das Array speichern kann. Hier also 4.

Array erstellen – Möglichkeit 2

int[] arr;
arr = new int [4]

Die Bedeutung der einzelnen Bestandteile sind genau wie oben.

Java Array initialisieren

Im nächsten Schritt musst du nun das Java Array initialisieren. Das bedeutet, dass du den aktuell noch leeren Container mit Werten füllst. Die Einträge besitzen dabei eine bestimmte Reihenfolge – den sogenannten Index der jeweiligen Position. Bei einem Array wird immer ab der 0 angefangen! Dabei erhält das erste Element den Index 0, das zweite den Index 1, der dritte Wert den Index 2 und der vierte Eintrag den Index 3. 

Soll die Zuweisung der Werte über die entsprechende Index-Position aufgerufen werden, sieht die Syntax  so aus:

arrayName[indexPosition] = Wert;

Dabei ist es auch möglich, dass einzelne Positionen innerhalb des Arrays leer bleiben. 

Du hast aber auch die Möglichkeit ein Array direkt bei der Deklaration zu initialisieren:

Datentyp[] arrayName = {Wert1, Wert2, Wert3,...};

Hierbei ist es aber nicht möglich, dem Array im Nachhinein neue Werte zuzuteilen! 

Beispiel

Für das Beispiel sollen jetzt die folgenden Werte in genau dieser Reihenfolge in das Array eingefügt werden: 65, 5, 78, 22.

Array initialisieren – Möglichkeit 1

arr[0] = 65;
arr[1] = 5;
arr[2] = 78;
arr[3] = 22;
  • arr: Name des Arrays, der innerhalb der Deklaration festgelegt wurde.
  • [0]: Die jeweilige Zahl bestimmt die Position innerhalb des Arrays. Hierbei handelt es sich um die erste Position im Array.
  • 65: Ist der Wert, der hier der Position null zugeteilt wird.

 Array initialisieren – Möglichkeit 2

int[] arr = {65, 5, 78, 22};

Hierbei initialisierst du das Array direkt bei der Deklaration. Die Werte werden in genau dieser Reihenfolge den Indexpositionen zugeteilt:

Index 0 Index 1 Index 2 Index 3
65 5 78 22

Zugriff auf die Elemente eines Arrays

Über den Index kannst du nun auf die einzelnen Werte des Arrays zugreifen. Möchtest du also nun einzelne Elemente des Arrays ausgeben, kannst du das ganz einfach nach dem folgenden Syntax machen:

System.out.println(Arrayname[indexPosition]);

Angenommen du sollst die Werte der zweiten und vierten Position des Arrays ausgeben, dann musst du auf die Indexposition 1 und 3 zugreifen

System.out.println(arr[1]);
System.out.println(arr[3]);

Entsprechend ist die Ausgabe:

5
22

Möchtest du alle Elemente eines Arrays ausgeben, kannst du hierfür auch ganz einfach eine for-Schleife   verwenden:

for(int i=0; i‹arr.length; i++) {
System.out.println(arr[i]);
}

Mit dieser Schleife gibst du alle Einträge des Arrays der Reihe nach auf dem Bildschirm aus.

Die Ausgabe ist:

65
5
78
22

Java Sort Array

Du hast in Java auch die Möglichkeit ein Array sortieren zu lassen. Zum Beispiel wenn du Zahlen in aufsteigender Reihenfolge ausgeben möchtest, dann kannst du zuvor einfach das Array mit der Methode sort() sortieren.

Bei Arrays.sort() handelt es sich um eine Methode der Klasse java.util.Arrays.

Für unser Beispiel lässt sich die Sortierung wie folgt umsetzen:

import java.util.Arrays;

public class JavaSortArray {
public static void main(String[] args){
int[] arr = {65, 5, 78, 22};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
}
}

Die Ausgabe ist:

[5, 22, 65, 78]

Java Array Length

Des Weiteren gibt es die Möglichkeit, die Array Length auszugeben. Die Länge eines Arrays kannst du dabei mit arrayName.length ermitteln:

public class JavaArrayLength {
public static void main (String[] args)
{
int[] arr = new int[4];
System.out.println(arr.length);
}
}

Ausgabe:

4

Mehrdimensionale Arrays Java

Du kannst in Java auch mehrdimensionale Arrays erzeugen.

In der Praxis verwendet man häufig zweidimensionale Arrays, aber auch höherdimensionale Arrays kommen zum Einsatz. 

In dem folgenden Programm siehst du ein zweidimensionales Array in Java. 

class MehrdimensionaleArraysJava {
    public static void main(String[] args) {
// Deklaration und Initialisierung des zweidimensionalen Arrays String[][] namen = { {"Frau ", "Herr "}, {"Bauer", "Meier", "Schmidt"} }; // Zugriff auf Frau Schmidt System.out.println(namen[0][0] + namen[1][2]); // Zugriff auf Herr Bauer System.out.println(namen[0][1] + namen[1][0]); } }

Die Ausgabe ist:

Frau Schmidt
Herr Bauer
  • string[][] namen = { }: Es wird ein Array des Datentyps String deklariert. Wie in einem Koordinatensystem benötigst du innerhalb eines zweidimensionalen Arrays zwei Indexpositionen,  um die genaue Position des Wertes zu bestimmen. Deshalb werden die eckigen Klammern doppelt benötigt. Der Arrayname ist namen. Innerhalb der geschweiften Klammern erfolgt dann die zweidimensionale Initialisierung.

%GRAFIK Mehrdimensionale Arrays

  • {"Frau", "Herr"}:Im oberen Programm ist es in dem zweidimensionalen Array namen das erste Array mit der Länge 2.
  • {"Bauer", "Meier", "Schmidt"}: Zweites Array mit der Länge 3.
  • namen[i][j]:Durch namen[i][j] wird auf die Werte des Arrays zugegriffen. Der erste Index beschreibt dabei das i-te Array und der zweite Index den j-ten Eintrag im i-ten Array. Dafür gilt das folgende Schema:
  Index 0 (erster Wert) Index 1 (erster Wert)
Index 0 (zweiter Wert) Frau ([0][0]) Bauer ([1][0])
Index 1 (zweiter Wert) Herr ([0][1]) Meier ([1][1])
Index 2 (zweiter Wert)   Schmidt ([1][2])

Betrachten wir beispielsweise namen[0][0] + namen[1][2]: Hier wird zuerst durch den ersten und zweiten Index 0 der Wert „Frau“ bestimmt. Im nächsten Schritt wird durch den ersten Index 1 auf das zweite Array zugegriffen und durch den zweiten Index 2 die dritte Position im zweiten Array ausgewählt – „Schmidt“.


Andere Nutzer halten diese Inhalte aus dem Bereich „Java“ für besonders klausurrelevant

Hallo, leider nutzt du einen AdBlocker.

Auf Studyflix bieten wir dir kostenlos hochwertige Bildung an. Dies können wir nur durch die Unterstützung unserer Werbepartner tun.

Schalte bitte deinen Adblocker für Studyflix aus oder füge uns zu deinen Ausnahmen hinzu. Das tut dir nicht weh und hilft uns weiter.

Danke!
Dein Studyflix-Team

Wenn du nicht weißt, wie du deinen Adblocker deaktivierst oder Studyflix zu den Ausnahmen hinzufügst, findest du hier eine kurze Anleitung. Bitte lade anschließend die Seite neu.