Bonne journée. La question est de savoir comment supprimer des éléments de la collection
Map . J'essaie de résoudre un autre problème et je n'arrive pas à avancer, car je ne comprends pas sur quel principe se produit la suppression de la collection. L'idée est de supprimer des éléments identiques d'une collection, la comparaison se fait par valeur. Dès les cours de niveau 8, j'ai compris que « itérateur » est en quelque sorte un lien vers notre collection. Par conséquent, j'ai créé 2 liens de ce type et, en comparant les éléments de la collection, j'ai décidé de supprimer les éléments auxquels ce lien (objet) iterator2 fait référence. Expliquez pourquoi je le fais mal. Je veux vraiment comprendre où je me trompe. Merci à tous ceux qui répondront. Une autre option pour implémenter la suppression d'une collection
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(); } } }
GO TO FULL VERSION