WeakHashMap的使用
package frank; import java.lang.*; import java.util.WeakHashMap; /** * WeakHashMap的使用 他HashMap用法基本类似,区别在于HashMap使用的是强引用, * 所在的key就不会被回收,而WeakHashMap所保留的Key是若引用,所以改key所引用的对象没有被其他对象引用的话可能会被回收掉,WeakHashMap也有可能会自动删除掉这些key * */ public class App { public static void main(String[] args)throws Exception { /**自动删除里面key**/ WeakHashMap whm = new WeakHashMap(); whm.put(new String("语文"),new String("良好")); whm.put(new String("数学"),new String("良好")); whm.put(new String("英语"),new String("良好")); whm.put("java",new String("良好"));//key是一个字符串常量池的字符串对象 System.out.println(whm); Runtime.getRuntime().gc(); Runtime.getRuntime().runFinalization(); System.out.println(whm); /** * 输出结果: * {java=良好, 数学=良好, 英语=良好, 语文=良好} {java=良好} * */ } }