Ich möchte das lastElement von 2D-ArrayList genannt Punkt und das letzte Element zurück zur Liste als ein neues Element mit aktualisierten Y-Wert und gleichen X-Wert hinzufügen. Also im Grunde, was ich tue, ist das letzte Element des Punkt-2D-Arrays zu bekommen, füge es am Ende des Punkt-2D-Arrays hinzu, aber mit Änderung zu y-Wert dazu. Aber das Problem ist, dass wenn ich den y-Wert ändere, es auch den Wert des Elements ändert, von dem die Information genommen wurde.Warum verändert das Ändern des Werts eines Elements in einer ArrayList das der anderen?
List<List<Integer>> point = new ArrayList<List<Integer>>();
List<Integer> values= new ArrayList<Integer>();
values.add(1);//x
values.add(2);//y
point.add(values);
point.add(point.get(point.size()-1));
point.get(0).set(1, 200);
System.out.println(point);
Ausgang: [[1, 200], [1, 200]] Erwartete Ausgabe: [[1, 2], [1, 200]]
Zeigen Sie uns den Code, zeigen Sie erwartete und aktuelle Ausgabe ... –
Bitte klären Sie mehr. Zeigen Sie etwas Code. –
http://stackoverflow.com/help/how-to-ask http://stackoverflow.com/help/mcve –