Wenn Sie heute an einem Projekt arbeiten, müssen Sie einige Elemente in der Liste löschen und festlegen. Bei Verwendung der Methode zum Überqueren und Löschen der folgenden Ausnahme:
ConcurrentModificationException
Um es in Zukunft nicht zu vergessen, verwenden Sie einen schlechten Stift -Tipp, um ihn wie folgt aufzunehmen:
Die Art und Weise, den Fehlercode zu schreiben, dh die Art und Weise, die obige Ausnahme zu schreiben:
Set <Chrowwork> set = this.getUserdao (). GetAll (qf) .get (0) .getActionCheckWorks (); für (Checkwork Checkwork: set) {if (checkwork.getState () == 1) {set.remove (Checkwork); }}HINWEIS: Verwenden der obigen Schreibmethode meldet die obige Übereinstimmung mit der Übereinstimmung. Der Grund dafür ist, dass die Sammlung beim Durchlaufen nicht gelöscht werden kann.
Die richtige Art zu schreiben ist wie folgt:
1. Durchquer- und Löschenliste
List <Chrowwork> list = this.getUserdao (). GetAll (); Iterator <Chrowwork> chk_it = list.iterator (); while (chk_it.hasnext ()) {Checkwork Checkwork = chk_it.next (); if (Checkwork.getPlanState () == 1) {chk_it.remove (); }}2. Durchquer- und Löschen -Set
Set <Chrowwork> set = this.getUserdao (). GetAll (). Get (0) .getActionCheckWorks (); Iterator <Chrowwork> it = set.Iderator (); while (it.hasnext ()) {Checkwork checkwork = it.next (); if (checkwork.getState () == 1) {it.remove ();}}Die obige Methode zum Überqueren und Löschen von Elementen in Listen- und Festlegen von Sammlungen in Java (empfohlen) ist der gesamte Inhalt, den ich mit Ihnen teile. Ich hoffe, Sie können Ihnen eine Referenz geben und ich hoffe, Sie können wulin.com mehr unterstützen.