/**
* Date: 2021/5/21 15:26
*/
public class WeakHashMapDemo {
public static void main(String[] args) {
myHashMap();
System.out.println("=======================");
myWeakHashMap();
}
private static void myHashMap() {
HashMap<Integer, String> map = new HashMap<>();
Integer key = new Integer(1); // 强引用
String value = "HashMap";
map.put(key,value);
System.out.println(map);
key = null; // 引用Integer 在map中是以Node结点存储的,这里key置空与map无关
System.out.println(map);
System.gc();
System.out.println(map);
}
private static void myWeakHashMap() {
// 弱引用 GC 会被回收,只要key 为null ,所指向的value就会被回收
WeakHashMap<Integer, String> map = new WeakHashMap<>();
Integer key = new Integer(2); // 强引用
String value = "WeakHashMap";
map.put(key,value);
System.out.println(map);
key = null;
System.out.println(map);
System.gc();
System.out.println(map);
}
}
WeakHashMap
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- WeakHashMap,它充分利用了WeakReference弱引用的特性,适合内存敏感的缓存实现场景。今天简单扒...
- 上一篇文章 Java内存泄露学习 ThreadLocal真的会内存泄露吗 提到ThreadLocal内存泄露的问题...
- 前言 本月还没有写过Java相关的东西,今天终于挤出点时间来了,弄一篇基础知识吧。 WeakHashMap是平时常...