weakhashmap如何运作?

就像weakhashmap如何理解对其中一个键的引用现在已经过时,特别是如果键是一个汇集的String?

你不能在WeakHashMap中使用String文字(你可以,但它没有意义):

String myKey = "somekey"; 

相反,你必须使用:

 String myKey = new String("somekey"); 

在后一种情况下,String不会被合并。

“过时”这个词是不精确的。 有问题的条件是“垃圾收集”。 当密钥被垃圾收集时,将从WeakHashMap中删除一个值。 期。