我如何获得Map的子视图,然后将其交叉掉,徒劳地旋转它。
这是我的代码片段:

HashMap<String,Integer> myLinkedHashMap = new LinkedHashMap<String, Integer>(1,1,true);
myLinkedHashMap.put("a", 2);
myLinkedHashMap.put("b", 3);
myLinkedHashMap.put("c", 4);
Set keysView =  myLinkedHashMap.keySet();
keysView.remove("a");  // worked without a hitch
Collection valuesView =  myLinkedHashMap.values();
valuesView.remove(4);  // like the last one


这是我的问题归结为:

Set<Entry<String,Integer>> associationsView = myLinkedHashMap.entrySet();
associationsView.remove("Nothing doing,for set does not know about key/value thing");


谢谢你的帮忙。

最佳答案

你想做什么?这样的事情行吗?

final Iterator<Entry<String,Integer>> iter = myLinkedHashMap.entrySet().iterator();
while(iter.hasNext()) {
  final Entry<String,Integer> entry = iter.next();
  if(entry.getKey().equals("something")) {
    iter.remove();
  }
}


值得一提的是Guava Maps类,它在过滤地图时有很多方法。

关于java - 从Map的键/值 subview 中删除元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14954834/

10-11 12:56