Hallo,
ich habe ein Array was ich zu einer ArrayList hinzufüge. Wenn ich danach einen Wert im Array ändere und dann die Liste ausgebe, wurde der Wert im Array geändert, obwohl ich das Array ja vorher zur Liste hinzugefügt habe(und sich die Werte eigentlich nicht mehr ändern dürften). Kann wer erklären woran das liegt?
Danke im Vorraus.
ich habe ein Array was ich zu einer ArrayList hinzufüge. Wenn ich danach einen Wert im Array ändere und dann die Liste ausgebe, wurde der Wert im Array geändert, obwohl ich das Array ja vorher zur Liste hinzugefügt habe(und sich die Werte eigentlich nicht mehr ändern dürften). Kann wer erklären woran das liegt?
Java:
private static int[][] f = { {1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
public static void main(String[] args) {
ArrayList<int[][]> a = new ArrayList<>();
a.add(f);
f[0][0] = 42;
for(int[][] arr: a) {
print(arr);
}
}