So ersetzen Sie den vorhandenen Wert des ArrayList-Elements in Java [duplicate]
Lesezeit: 2 Minuten
Kani
Ich bin noch ziemlich neu in der Java-Programmierung und versuche, einen vorhandenen Wert von an zu aktualisieren ArrayList indem Sie diesen Code verwenden:
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add( "Zero" );
list.add( "One" );
list.add( "Two" );
list.add( "Three" );
list.add( 2, "New" ); // add at 2nd index
System.out.println(list);
}
Ich möchte drucken New Anstatt von Two aber ich habe [Zero, One, New, Two, Three] als Ergebnis, und ich habe immer noch Two. Ich möchte drucken [Zero, One, New, Three]. Wie kann ich das machen? Danke.
Verwenden Sie die set Methode, um den alten Wert durch einen neuen zu ersetzen.
list.set( 2, "New" );
Sivabalan
Wenn Sie die zu ersetzende Position nicht kennen, verwenden Sie den Listeniterator, um das Element zu finden und zu ersetzen ListIterator.set(E e)
ListIterator<String> iterator = list.listIterator();
while (iterator.hasNext()) {
String next = iterator.next();
if (next.equals("Two")) {
//Replace element
iterator.set("New");
}
}
Was ist, wenn ich den Index des Objekts nicht kenne, aber ich möchte das Objekt an einer bestimmten Stelle durch ein neues ersetzen? Ist es möglich?
– santhanam
29. Mai 2017 um 6:57 Uhr
@santhanam Sie können list.set(list.indexOf(oldObject), newObject) verwenden;
– Alberto Alegria
3. Juni 2017 um 1:07 Uhr
@Alberto was wäre, wenn es dasselbe Element wäre, aber aktualisiert?
– Mohammed Ali
15. März 2018 um 12:39 Uhr
@MohammadAli überschreiben equals -Methode Ihrer Objektklasse und implementieren Sie danach Ihre eigenen Regeln, um zu prüfen, ob Objekte gleich (gleich) sind List.contains(object), List.indexOf(object), object1.equals(object2) wird gut funktionieren
– Benutzer25
26. Januar 2019 um 14:41 Uhr
@santhanam Beachten Sie, dass indexOf den Index des ersten Vorkommens des Elements zurückgibt
– Arxakoulini
16. September 2020 um 10:55 Uhr
Thwin Htoo Aung
Sie müssen verwenden
list.remove(indexYouWantToReplace);
Erste.
Ihre Elemente werden so werden. [zero, one, three]
dann füge das hinzu
list.add(indexYouWantedToReplace, newElement)
Ihre Elemente werden so werden. [zero, one, new, three]
13440900cookie-checkSo ersetzen Sie den vorhandenen Wert des ArrayList-Elements in Java [duplicate]yes