【发布时间】:2013-12-04 17:22:04
【问题描述】:
我想找到一个简化的 Java Map 或 List,我不关心 values 集合中的实际值是什么,而只关心:
boolean containsKey(Object key): if the key exists
void remove(Object key): remove the entry of the key
一方面,我想通过仅使用键集(如 Java 列表)来节省内存,另一方面,我想在 O(1) 时间内运行以上 2 个方法。订单也不在乎。那么这在Java中可能吗?谢谢
【问题讨论】:
-
可能是一个 OrderedSet(或者如果您不关心顺序,则只是 Set)是您正在寻找的?
-
HashSet似乎是您正在寻找的收藏。 -
@Taylor 是的,顺序无所谓。我想用谷歌搜索 OrderedSet,但从未听说过
-
@Jun 然后使用 HashSet,如下 Jeroen 解释的那样
-
@Jun
HashSet在内部使用HashMap将占用相似的内存量,contains和remove也是 O(1)。
标签: java performance list map