Skip to content

Kapitel 8: Arrays (Datenfelder)

🎯 Lernziele

  • Was Arrays sind und wofür man sie braucht
  • Arrays definieren und initialisieren
  • Auf Array-Elemente zugreifen und Arrays durchlaufen
  • Häufige Array-Operationen (Maximum, Minimum, Summe, Suche)
  • Zweidimensionale Arrays (Einstieg)

8.1 Was sind Arrays?

Array = Container für mehrere Werte gleichen Datentyps.

Array: zahlen = [10, 20, 30, 40, 50]
Index:        0    1    2    3    4

Vorteile:

  • ✅ Mehrere Werte in einem Container
  • ✅ Geordneter Zugriff über Index (beginnt bei 0)
  • ✅ Effiziente Speicherverwaltung

8.2 Array-Definition und Initialisierung

Syntax

java
// Methode 1: Direkt initialisieren (empfohlen)
datentyp[] arrayName = {wert1, wert2, wert3};

// Methode 2: Größe festlegen
datentyp[] arrayName = new datentyp[größe];
arrayName[0] = wert1;

Beispiel

java
public class ArrayBeispiel {
    public static void main(String[] args) {
        // Methode 1
        int[] zahlen1 = {10, 20, 30, 40, 50};
        
        // Methode 2
        int[] zahlen2 = new int[3];
        zahlen2[0] = 100;
        zahlen2[1] = 200;
        zahlen2[2] = 300;
        
        System.out.println("Länge von zahlen1: " + zahlen1.length);  // 5
    }
}

Wichtig: .length ist ein Attribut (keine Klammern ()!)

8.3 Array-Zugriff und Durchlaufung

Zugriff auf Elemente (Index beginnt bei 0!)

java
int[] zahlen = {10, 20, 30};

// Lesen
System.out.println(zahlen[0]);  // 10

// Schreiben/Ändern
zahlen[1] = 25;

Array durchlaufen

Methode 1: Klassische for-Schleife

java
int[] zahlen = {10, 20, 30, 40, 50};

for (int i = 0; i < zahlen.length; i++) {
    System.out.println("Index " + i + ": " + zahlen[i]);
}

Methode 2: For-each Schleife (einfacher)

java
for (int zahl : zahlen) {
    System.out.println(zahl);
}

8.4 Häufige Array-Operationen

Beispiel 1: Maximum und Minimum finden

java
public class MaxMinArray {
    public static void main(String[] args) {
        int[] zahlen = {34, 12, 78, 5, 90, 23};
        
        int maximum = zahlen[0];
        int minimum = zahlen[0];
        
        for (int zahl : zahlen) {
            if (zahl > maximum) maximum = zahl;
            if (zahl < minimum) minimum = zahl;
        }
        
        System.out.println("Maximum: " + maximum);  // 90
        System.out.println("Minimum: " + minimum);  // 5
    }
}

Beispiel 2: Summe und Durchschnitt

java
public class SummeArray {
    public static void main(String[] args) {
        int[] zahlen = {10, 20, 30, 40, 50};
        int summe = 0;
        
        for (int zahl : zahlen) {
            summe += zahl;
        }
        
        double durchschnitt = (double) summe / zahlen.length;
        
        System.out.println("Summe: " + summe);           // 150
        System.out.println("Durchschnitt: " + durchschnitt);  // 30.0
    }
}

Beispiel 3: Element suchen

java
import java.util.Scanner;

public class SucheArray {
    public static void main(String[] args) {
        int[] zahlen = {34, 12, 78, 5, 90, 23};
        Scanner scanner = new Scanner(System.in);
        
        System.out.print("Zu suchende Zahl: ");
        int ziel = scanner.nextInt();
        
        boolean gefunden = false;
        for (int i = 0; i < zahlen.length; i++) {
            if (zahlen[i] == ziel) {
                System.out.println("Gefunden an Index: " + i);
                gefunden = true;
                break;
            }
        }
        
        if (!gefunden) {
            System.out.println("Nicht gefunden!");
        }
        
        scanner.close();
    }
}

8.5 Zweidimensionale Arrays (Einstieg)

2D-Array = Tabelle mit Zeilen und Spalten.

java
public class ZweiDArray {
    public static void main(String[] args) {
        // 2D-Array (3 Zeilen, 3 Spalten)
        int[][] matrix = {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        };
        
        // Array ausgeben
        for (int i = 0; i < matrix.length; i++) {
            for (int j = 0; j < matrix[i].length; j++) {
                System.out.print(matrix[i][j] + "\t");
            }
            System.out.println();
        }
    }
}

Ausgabe:

1 2 3
4 5 6
7 8 9

📝 Zusammenfassung

In diesem Kapitel hast du gelernt:

  • ✅ Arrays sind Container für mehrere Werte gleichen Datentyps
  • ✅ Index beginnt immer bei 0
  • .length gibt die Länge des Arrays zurück
  • ✅ For-each Schleife zum einfachen Durchlaufen
  • ✅ 2D-Arrays für tabellenartige Daten

🎯 Nächste Schritte

Im nächsten Kapitel lernst du:

  • Methoden (Funktionen) (Kapitel 9)
  • Wie man Code in wiederverwendbare Blöcke strukturiert
  • Methoden definieren, aufrufen, Parameter und Rückgabewerte

📚 Weiterführende Links:

💬 Fragen?
Hinterlassen Sie einen Kommentar!

Frei für alle Anfänger