在java集合中查找弱引用对象
关于Java的WeakReference和Collections的几个问题:在java集合中查找弱引用对象,java,collections,weak-references,Java,Collections,Weak References,关于Java的WeakReference和Collections的几个问题: 有没有一个库可以透明地使用WeakReference实现Java的各种数据集接口(如集合、列表、集合、队列等)?WeakHashMap是用于HashMap接口的吗 或者,常见的解决方案是简单地创建普通集合,然后使用compareTo或Comparator之类的技巧来正确搜索集合 我基本上希望这样: public interface WeakCollection<E> extends Collection&l
public interface WeakCollection<E> extends Collection<E> {}
公共接口WeakCollection扩展集合{}
但接口的约定是对E的引用存储得很弱。显然,当对象离开时,get(int-index)
返回null时,我没有问题,但是我希望包含(ee)
函数和其他类似项能够正常工作
我只是想避免“这里没有发明”的陷阱,并确保如果我自己实现了这一点,这将是最简单的解决方案。在Java 6中
Set s=Collections.newSetFromMap(newweakhashmap());
我还发现了一个LGPL,如果有帮助的话。谷歌收藏可能?他们的地图生成器相当不错,我听说一个巧妙的技巧(仅在某些时候适用)是在referent对象本身中包含一个规范的WeakReference-只需要为每个目标创建一个引用,并且等于/==work。哦,很好,集合技巧很酷,绝对有用。
Set<T> s = Collections.newSetFromMap(new WeakHashMap<T, Boolean>());