Michael: Array wird von Methode überschrieben

Beitrag lesen

Hallo!

Ich experimentiere gerade ein wenig mit Java. Dabei ist mir aufgefallen, dass eine Methode ganz einfach ein Array verändern kann, das an sie übergeben wurde.
Beispiel:

public class Test {
  static void test (int[] zahlenreihe) {
    // in der Methode wird das Array zahlenreihe verändert
  }
  public static void main (String[] args) {
    // Das Array zahlenreihe wird erstellt und mit Werten gefüllt
    test (zahlenreihe);
    // Beim anschließenden Ausgeben der einzelnen Arrayfelder haben sie die Werte, wie sie in der Methode test verändert wurden.
  }
}

Wie kann das sein? Ich habe bisher immer gelesen, dass nur der Inhalt der Variablen an eine Methode übergeben werden. Dort werden sie dann in eine lokale Variable gespeichert - nach Ablauf der Methode müssten sie also wieder die alten Werte haben, oder nicht?

Mir würde auch ein Link reichen, wo das ganze genauer erklärt wird. Im Internet habe nichts gefunden außer dem, was ich oben beschrieben habe.

Danke schonmal,
Michael