本文介绍了为什么存在 WeakHashMap,而没有 WeakSet?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
来自 J.布洛赫
一个......内存泄漏的来源是听众... 确保回调是垃圾收集及时只是存储弱对它们的引用,例如,将它们仅作为密钥存储在WeakHashMap.
那么,为什么 Java 集合框架中没有任何 WeakSet?
So, why there isn't any WeakSet in the Java Collections framework?
推荐答案
Collections.newSetFromMap
Set<Object> weakHashSet =
Collections.newSetFromMap(
new WeakHashMap<Object, Boolean>()
);
如Collections.newSetFromMap
文档,传递一个 WeakHashMap
获取Set
.
这篇关于为什么存在 WeakHashMap,而没有 WeakSet?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!