JavaRush /Blog Java /Random-ES /Colecciones. Mapa. Borrar.
oktava
Nivel 23
Санкт-Петербург

Colecciones. Mapa. Borrar.

Publicado en el grupo Random-ES
Buen día. La pregunta es cómo eliminar elementos de la colección de mapas . Estoy intentando resolver otro problema y no puedo avanzar porque no entiendo por qué principio se produce la eliminación de la colección. La idea es eliminar elementos idénticos de una colección; la comparación se realiza por valor. De las conferencias del nivel 8 entendí que "iterador" es algo así como un enlace a nuestra colección. Por lo tanto, creé 2 enlaces de este tipo y, al comparar los elementos de la colección, decidí eliminar los elementos a los que se refiere este enlace (objeto) iterador2. Explica por qué lo estoy haciendo mal. Realmente quiero entender dónde me equivoco. Gracias a todos los que responderán. Otra opción para implementar la eliminación de una colección. for (Iterator > iterator1 = map.entrySet().iterator(); iterator1.hasNext();){ HashMap.Entry pair1 = iterator1.next(); for (Iterator > iterator2 = map.entrySet().iterator(); iterator2.hasNext();) { HashMap.Entry pair2 = iterator2.next(); if(pair1.getValue().equals(pair2.getValue())){ map.remove(pair2.getKey()); } } } Iterator > iterator1 = map.entrySet().iterator(); while(iterator1.hasNext()){ Map.Entry pair1 = iterator1.next(); Iterator > iterator2 = map.entrySet().iterator(); while(iterator2.hasNext()){ Map.Entry pair2 = iterator2.next(); if (pair1.getValue().equals(pair2.getValue())){ iterator2.remove(); } } }
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION