2013-08-07 93 views
2
HashMap<String, String> foo = new HashMap<String, String>(); 
HashMap<String, String> baar = new HashMap<String, String>(); 

如何從foo中刪除在baar中找到的項目?如何從另一張地圖中移除一張地圖的元素?

+0

是否要刪除其中的關鍵是找到任何條目在巴爾,還是價值必須是一樣的呢?例如。如果foo有(「apple」,「pie」)和baar有(「apple」,「cobbler」),蘋果派是否應該從foo中移除?另外,你有沒有試圖自行解決這個問題?你有什麼嘗試,以什麼方式不起作用? – Michelle

+1

這還不夠清楚。 baar和foo有什麼關係? –

回答

14

你可以試試:

foo.keySet().removeAll(baar.keySet()) 

變化到MapkeySet()反映在地圖本身。

如果你想刪除確切映射(不只是基於鍵),可以使用與entrySet(),而不是相同的方法:

foo.entrySet().removeAll(baar.entrySet()); 
相關問題