JavaRush /Java Blog /Random-TW /收藏。地圖。刪除。
oktava
等級 23
Санкт-Петербург

收藏。地圖。刪除。

在 Random-TW 群組發布
再會。問題是如何從Map集合中刪除元素。我正在嘗試解決另一個問題,但無法繼續,因為我不明白從集合中刪除的原理是什麼。這個想法是從集合中刪除相同的元素;比較是按值完成的。從第 8 級講座中我了解到「迭代器」就像是我們集合的連結。因此,我創建了 2 個這樣的鏈接,並透過比較集合中的元素,決定刪除此連結(物件)iterator2 引用的元素。解釋一下我為什麼做錯了。我真的很想明白我哪裡錯了。感謝所有願意回覆的人。 實現從集合中刪除的另一種選擇 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(); } } }
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION