Programmieren - alles kontrollieren 4.939 Themen, 20.671 Beiträge

Java-Frage Array, Übergabe in "Funktionen"

PingOfDeath / 5 Antworten / Flachansicht Nickles

Folgendes Problem:

Mein Programm sieht so aus (sehr grob ^^):

x(INT_Array);
y(INT_Array);

static void x(int [] INT_Array)
static void y(int [] INT_Array)

Ich übergebe also ein Array mit 4 Werten an Funktionen welche mir etwas ausrechnen - sie geben nur etwas aus nichts zurück (void).
Wenn ich jetzt vor und nach dem Aufruf von "x" mir "INT_Array[0]" ausgeben lasse kommt jedesmal etwas anderes raus --> somit arbeitet "y" mit falschen Werten!

Was mache ich da falsch) Warum ändern sich die Werte im Array welches ich immer übergeben möchte?

Gruß, PingOfDeath

bei Antwort benachrichtigen
Borlander PingOfDeath „ kopie des array-objekts, d.h. der referenz In der Funktion x wird das Array...“
Optionen

Wenn das komplette Array überschrieben wird wird wäre es am einfachsten (und schnellsten), wenn Du in der Funktion einfach ein neues Array gleicher größe erstellst und nur noch in dieses schreibst ;-)

Ansonsten kannst Du mit INT_Array.clone() eine Kopie des Arrays erstellen.


Gruß
Borlander

bei Antwort benachrichtigen