快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Java中WeakHashMap如何使用

Java中WeakHashMap如何使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联主要业务有网站营销策划、成都网站设计、成都网站建设、微信公众号开发、重庆小程序开发公司H5建站、程序开发等业务。一次合作终身朋友,是我们奉行的宗旨;我们不仅仅把客户当客户,还把客户视为我们的合作伙伴,在开展业务的过程中,公司还积累了丰富的行业经验、成都全网营销资源和合作伙伴关系资源,并逐渐建立起规范的客户服务和保障体系。 

1. WeakHashMap类概述

WeakHashMap 是一个基于Hash表的Map接口实现的弱键。当其密钥不再正常使用时,将自动删除该条目中的条目。支持空值和空值。该类具有与HashMap类相似的性能特征,并具有与初始容量和负载因子相同的效率参数。与大多数集合类一样,此类不同步。可以使用以下来构造   同步  WeakHashMap WeakHashMap Collections.synchronizedMap 方法。弱引用 - 如果对象的唯一引用是弱引用,则垃圾收集器可以随时回收对象的内存。它不必等到系统内存不足。通常,它将在下次垃圾收集器运行时释放。此类是Java Collections Framework的成员。

2. WeakHashMap类构造函数

  • WeakHashMap() - WeakHashMap 使用默认初始容量(16)和加载因子(0.75)构造一个新的空  。

  • WeakHashMap(int initialCapacity) - WeakHashMap 使用给定的初始容量和默认加载因子(0.75)构造一个新的空。

  •  WeakHashMap(int initialCapacity, float loadFactor) - WeakHashMap 使用给定的初始容量和给定的加载因子构造一个新的空  。

  • WeakHashMap(Map< ?extends K,? extends V> m)  - 构造一个WeakHashMap 与指定映射具有相同映射的new 。

3. WeakHashMap类方法

  •  void clear() -  从此映射中删除所有映射。

  • boolean containsKey(Object key) - 如果此映射包含指定键的映射,则返回true。

  •  boolean containsValue(Object value) - 如果此映射将一个或多个键映射到指定值,则返回true。

  •  Set<  Map.Entry>entrySet() -返回此映射中包含的映射的Set视图。

  • void forEach(BiConsumer action)  - 对此映射中的每个条目执行给定操作,直到处理完所有条目或操作引发异常。

  •  V get(Object key) -  返回指定键映射到的值,如果此映射不包含键的映射,则返回null。

  • boolean isEmpty() - 如果此映射不包含键 - 值映射,则返回true。

  •  Set keySet() - 返回此映射中包含的键的Set视图。

  • V put(K key, V value)  -  将指定值与此映射中的指定键相关联。

  •  void putAll(Map m) -将指定映射中的所有映射复制到此映射。

  •  V remove(Object key) - 如果存在,则从此弱哈希映射中删除键的映射。

  •  void replaceAll(BiFunctionfunction)  - 将每个条目的值替换为在该条目上调用给定函数的结果,直到所有条目都已处理或函数抛出异常。

  •  int size() - 返回此映射中键 - 值映射的数量。

  • Collection values() -  返回此映射中包含的值的Collection视图。

4. WeakHashMap类示例

如我们所知,当一个条目中的条目不再被外部引用并且密钥到期时,它将被自动删除。在这个例子中,我们创建了两个键 - key1和key2 - 值为“ACTIVE”和“INACTIVE”。现在,使key1为null并运行该程序。输出应该是单个条目: WeakHashMap

导入 java。util。地图 ;
导入 java。util。地图。进入 ;
导入 java。util。WeakHashMap ;

公共 类 WeakHashMapExample {
    public  static  void  main(final  String [] args){
        final  Map < Key,Project >  map  =  new  WeakHashMap <>();
        Key  key1  =  new  Key(“ACTIVE”);
        final  key  key2  =  new  Key(“INACTIVE”);
        地图。put(key1,new  Project(100,“Customer Management System”,“Customer Management System”));
        地图。put(key2,new  Project(200,“Employee Management System”,“Employee Management System”));

        key1  =  null ;
        系统。gc();
        为(最终 条目< 键,项目>  条目:地图。的entrySet()){
            系统。出。的println(条目。信息getKey()。信息getKey()+  “”  +  条目。的getValue());
        }
    }
}

class  Key {
    私有 String  键 ;

    public  Key(final  String  key){
        super();
        这个。key  =  key ;
    }

    public  String  getKey(){
        返回 键 ;
    }

    public  void  setKey(final  String  key){
        这个。key  =  key ;
    }
}

输出:

INACTIVE    [ 项目 编号:200,项目 名称:员工 管理 系统,
           项目 说明:员工 管理 系统 ]

关于Java中WeakHashMap如何使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


新闻名称:Java中WeakHashMap如何使用
文章URL:http://6mz.cn/article/ghpgig.html

其他资讯