Java 如何按值从hashmap中删除条目?

Java 如何按值从hashmap中删除条目?,java,hashmap,Java,Hashmap,我需要一个方法来从hashmap中按其值删除entryset。有没有一个没有迭代的简单方法?有一个简单的方法,但它会在内部使用迭代。(这是没有办法的。) 不在HashMap中,但有一个BiMap,您可以像下面的伪代码那样进行操作 BiMap m=new HashBiMap(); m.inverse().remove(valueYouWantToRemove) 仅供参考,您指向Guava Javadoc的链接已经过时了—更好的链接应该是或—您应该实例化类似于HashBiMap,因为BiMap是一

我需要一个方法来从hashmap中按其值删除entryset。有没有一个没有迭代的简单方法?

有一个简单的方法,但它会在内部使用迭代。(这是没有办法的。)

不在HashMap中,但有一个BiMap,您可以像下面的伪代码那样进行操作

BiMap m=new HashBiMap();
m.inverse().remove(valueYouWantToRemove)

仅供参考,您指向Guava Javadoc的链接已经过时了—更好的链接应该是或—您应该实例化类似于
HashBiMap
,因为
BiMap
是一个接口。此外,只有当您知道自己的值是唯一的时,这种技术才起作用——这在OP的帖子中是不清楚的。@LouisWasserman thx,以获取评论。我的目的只是提供伪代码。无论如何,我纠正了它。OP提到删除了一个“入口集”。如果他指的是一个集合,那么他可以使用map.values().removeAll(setOfValuesToRemove)@cataschok注意到map.values.remove(valueToRemove)只会删除遇到的第一个valueToRemove。
BiMap m=new HashBiMap();
m.inverse().remove(valueYouWantToRemove)