Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: ansalasva en 04 de Agosto 2015, 16:55

Título: java.util.ConcurrentModificationException
Publicado por: ansalasva en 04 de Agosto 2015, 16:55
Buenas, tengo un problema parecido. Yo ya he utilizado el iterator pero debo de estar haciendo algo mal y no se qué es. Podríais echarme una mano?
La situación es la siguiente: le estoy pasando a un método un objeto llamado producto, el fin de este método es el de ver si los ids de los producto son iguales; si son iguales, manda un error y si son diferentes, agrega el objeto al arraylist. El codigo es el siguiente:
  public void anadirProducto(Producto item){
     // Si el indice es igual que otro.
              Iterator<Producto> recorrer = stock.iterator();
             
              if (stock.size() == 0){ 
                    stock.add(item);
                }else{
                   
                    while (recorrer.hasNext()){
                        Producto producto = recorrer.next();
                         if (item.getID()== producto.getID()){
                                System.out.println("Tiene un id igual");
                         }else{
                                stock.add(item);
                    }
                }
         
            }
        }
Gracias!
Título: Re:java.util.ConcurrentModificationException
Publicado por: Alex Rodríguez en 04 de Agosto 2015, 18:53
Hola ansalasva como veo que eres nuevo/a en los foros pedirte lo siguiente:

Leer https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0 donde se explica cómo pegar código en los foros y otras cosas a tener en cuenta para escribir en los foros.

En general es preferible crear un nuevo tema (en lugar de responder a un tema en el que se dejó de intervenir hace tiempo por ejemplo)

Para poder recibir ayuda describir lo mejor posible el problema e incluir el código de clases completas de modo que otras personas podamos compilar y reproducir lo que estás haciendo tú.

Voy a separar esta conversación en un nuevo tema y espero tu respuesta

Saludos