Heim > Java > javaLernprogramm > Wie entferne ich Elemente während der Iteration sicher aus einer Java-Liste?

Wie entferne ich Elemente während der Iteration sicher aus einer Java-Liste?

Patricia Arquette
Freigeben: 2024-12-31 18:42:10
Original
561 Leute haben es durchsucht

How to Safely Remove Elements from a Java List During Iteration?

Remove in einer Foreach-Schleife in Java aufrufen

Sicheres Iterieren mit Iteratoren

Ändern einer Sammlung beim Durchlaufen mit Eine foreach-Schleife kann zu Fehlern führen. Um Elemente während der Iteration sicher zu entfernen, verwenden Sie einen expliziten Iterator.

List<String> names = ...
Iterator<String> i = names.iterator();
while (i.hasNext()) {
    String s = i.next();
    if (...) {
        i.remove();
    }
}
Nach dem Login kopieren

Concurrent Modification Exception

Ohne Verwendung eines Iterators schlägt der Code mit einer ConcurrentModificationException fehl, wenn die Die Sammlung wird während der Iteration geändert. Der explizite Iterator stellt sicher, dass die Änderungen nachverfolgt und in der zugrunde liegenden Sammlung widergespiegelt werden.

Hinweis zur verschachtelten Entfernung

Im bereitgestellten Beispiel wird die innere While-Schleife weiterhin entfernt das gleiche Element, bis es nicht mehr existiert. Obwohl es technisch gesehen legal ist, gilt es im Allgemeinen als schlechte Praxis, es sei denn, es gibt einen ganz bestimmten Grund.

Das obige ist der detaillierte Inhalt vonWie entferne ich Elemente während der Iteration sicher aus einer Java-Liste?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage