Al trabajar en un proyecto hoy, debe eliminar algunos elementos en la lista y establecer. Al usar el método de atravesar y eliminar mientras se usa la siguiente excepción:
ConcurrenteModificationException
Para no olvidarlo en el futuro, use un consejo de lápiz malo para grabarlo de la siguiente manera:
La forma de escribir el código de error, es decir, la forma de escribir la excepción anterior:
SET <CHOCKWORK> set = this.getUserDAO (). GetAll (qf) .get (0) .getActionCheckWorks (); for (checkwork chechwork: set) {if (checkwork.getState () == 1) {set.remove (checkwork); }}Nota: El uso del método de escritura anterior informará la excepción de concurrencia de concepto anterior. La razón es que la colección no se puede eliminar mientras atraviesa.
La forma correcta de escribirlo es la siguiente:
1. Lista de transversal y eliminación
Lista <ChechWork> list = this.getUserDAO (). GetAll (); Iterator <CheckWork> chk_it = list.iterator (); while (chk_it.hasnext ()) {checkwork checkwork = chk_it.next (); if (checkwork.getplanState () == 1) {chk_it.remove (); }}2. Traversal y eliminación
Set <ChechWork> set = this.getUserDAO (). GetAll (). Get (0) .getActionCheckWorks (); Iterator <CheckWork> it = set.iterator (); while (it.hasnext ()) {checkwork checkwork = it.next (); if (checkwork.getState () == 1) {it.remove ();}}El método anterior para atravesar y eliminar elementos en la lista y establecer colecciones en Java (recomendado) es todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.