In Java sind ArrayLists dynamische Arrays, die zum Speichern von Elementen eines bestimmten Typs verwendet werden können. Bei der Arbeit mit ArrayLists ist es wichtig zu verstehen, wie sich Zuweisungen verhalten.
Angenommen, wir haben eine ArrayList l1 mit 10 Elementen und weisen sie einer anderen Variablen l2 zu. Zeigen l1 und l2 auf dasselbe ArrayList-Objekt oder ist l2 eine Kopie des Objekts zugewiesen?
Zuweisung in Java kopiert einfach den Wert der Variablen, die In diesem Fall handelt es sich um einen Verweis auf das ArrayList-Objekt. Infolgedessen verweisen l1 und l2 beide auf dasselbe ArrayList-Objekt.
Zum Beispiel:
List<Integer> l1 = new ArrayList<>(); for (int i = 1; i <= 10; i++) { l1.add(i); } List l2 = l1; l2.clear();
In diesem Fall wirkt sich das Löschen von l2 auch auf l1 aus, da beide auf dasselbe verweisen Objekt.
Um eine Kopie eines ArrayList-Objekts zu erstellen, kann eine flache Kopie erstellt werden, indem eine neue ArrayList erstellt und die Elemente aus der ursprünglichen Liste zur neuen hinzugefügt werden:
List<Integer> newList = new ArrayList<>(oldList);
Diese Methode führt zu einem separaten ArrayList-Objekt mit denselben Elementen wie das Original.
Das obige ist der detaillierte Inhalt vonErstellt die ArrayList-Zuweisung von Java eine Kopie oder eine gemeinsame Referenz?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!