Java.util.WeakHashMap 类

简介

java.util.WeakHashMap 类是一个基于散列表的 Map 实现,带有弱键。 当 WeakHashMap 中的条目不再使用时,垃圾收集器将自动删除它。 以下是关于 WeakHashMap 的要点 −

  • 同时支持空值和空键。

  • 像大多数集合类一样,这个类也是不同步的。

  • 此类主要用于关键对象,其 equals 方法使用 == 运算符测试对象身份。

  • WeakHashMap 中的每个关键对象都被间接存储为弱引用的引用对象。

  • 这个类是 Java 集合框架的成员。


类声明

以下是 java.util.WeakHashMap 类的声明 −

public class WeakHashMap<K,V> 
   extends AbstractMap<K,V>
   implements Map<K,V>

这里<K>是这个映射维护的键的类型,<V>是映射值的类型。


类构造函数

序号 构造函数 & 描述
1

WeakHashMap()

此构造函数用于创建一个空的 WeakHashMap,默认初始容量 (16) 和加载因子 (0.75)。

2

WeakHashMap(int initialCapacity)

此构造函数用于创建具有给定初始容量和默认负载因子 (0.75) 的空 WeakHashMap。

3

WeakHashMap(int initialCapacity, float loadFactor)

此构造函数用于创建具有给定初始容量和给定负载因子的空 WeakHashMap。

4

WeakHashMap(Map<? extends K,? extends V> m)

此构造函数用于创建与指定映射具有相同映射的新 WeakHashMap。


类方法

序号 方法 & 描述
1 void clear()

此方法会从此映射中删除所有映射。

2 boolean containsKey(对象键)

如果此映射包含指定键的映射,则此方法返回 true。

3 boolean containsValue(Object value)

如果此映射将一个或多个键映射到指定值,则此方法返回 true。

4 Set<Map.Entry>K,V>> entrySet()

此方法返回此映射中包含的映射的 Set 视图。

5 v get(Object key)

此方法返回指定键映射到的值,如果此映射不包含该键的映射,则返回 null。

6 boolean isEmpty()

如果此映射不包含键值映射,则此方法返回 true。

7 Set<K> keySet()

此方法返回此映射中包含的键的 Set 视图。

8 v put(K key, V value)

此方法将指定值与此映射中的指定键相关联。

9 void putAll(Map<? extends K,? extends V> m)

此方法将所有映射从指定映射复制到此映射。

10 v remove(Object key)

如果存在,此方法会从该弱哈希映射中删除键的映射。

11 int size()

该方法返回此映射中键值映射的数量。

12 Collection<V> values()

此方法返回此映射中包含的值的 Collection 视图。


继承的方法

这个类继承了以下类的方法 −

  • java.util.AbstractMap
  • java.lang.Object
  • java.util.Map