当前位置: 首页 > 面试题库 >

以有效的方式从地图上删除多个键?

松俊才
2023-03-14
问题内容

我有Map<String,String>大量的键值对。现在我要从中删除选定的键Map。以下代码显示了我为实现该目标所做的工作。

Set keySet = new HashSet(); //I added keys to keySet which I want to remove.

然后 :

Iterator entriesIterator = keySet.iterator();
while (entriesIterator.hasNext()) {
   map.remove( entriesIterator.next().toString());
}

可以了 我只想知道,哪种方法可以更好地满足我的要求?


问题答案:

假设你的一套包含您要删除的字符串,你可以使用的keySet方法和map.keySet().removeAll(keySet);

keySet返回此映射中包含的键的Set视图。该集合由地图支持,因此对地图的更改会反映在集合中,反之亦然。

人为的例子:

Map<String, String> map = new HashMap<>();
map.put("a", "");
map.put("b", "");
map.put("c", "");

Set<String> set = new HashSet<> ();
set.add("a");
set.add("b");

map.keySet().removeAll(set);

System.out.println(map); //only contains "c"


 类似资料:
  • 我一直在使用在动态添加和删除视图到viewpager中显示的适配器,但并不是所有的都能正常工作。 我的ViewPager包含一些带有WebViews的自定义视图。我所做的是一个PagerAdapter的扩展类,它实现了与我第一篇文章的答案中所示的几乎相同的方法。 当我同时删除多个页面时,问题就来了。正如上面的答案中所解释的,对于删除页面,我们将适配器设置为空,然后再次设置。我使用的方法几乎与只使用

  • 问题内容: 我知道如何安全地从字典中删除一个条目。你做: 但是,我需要安全地从字典中删除多个条目。我正在考虑在元组中定义条目,因为我将需要多次执行此操作。 但是,我想知道是否有更聪明的方法来做到这一点? 问题答案: 为什么不这样: mattbornski使用dict.pop()提供了一个更紧凑的版本) 使用dict.pop:

  • 我目前正在为学校开发一款Java的2D游戏。我们必须使用抽象工厂设计模式。对于2D实现,我使用如下工厂: 在我的显示类中,我创建了一个 JFrame 和 Jpanel 现在,从我的主gameloop中,我调用Java2DPLay的类中的可视化方法来可视化我的游戏体验 我的目标是将JPanel传递给每个实体,并让它在显示之前将其内容绘制到面板上。然而,我似乎不知道该怎么做。当通过改变面板的图形来使用

  • 有没有一个有效的方法来删除Nones从Numpy数组和调整数组到它的新大小? 例如,如何在不在python中迭代的情况下从这个框架中删除None。我可以很容易地对它进行迭代,但正在处理一个可能被多次调用的api调用。

  • 删除地图将删除地图中的图层,相关设置,该操作不可恢复,请慎重操作。删除后该地图的分享链接将自动失效。 注意:删除地图不会影响到你在数据管理中创建的数据。你可以在其他地图中继续使用这些数据。