Java的集合LinkedHashSet详解

 更新时间:2023年09月05日 10:14:33   作者:Fly_Fly_Zhang  
这篇文章主要介绍了Java的集合LinkedHashSet详解,LinkedHashSet介于HashSet和TreeSet之间,它也是一个hash表,但是同时维护了一个双链表来记录插入的顺序,需要的朋友可以参考下

LinkedHashSet

特点:

继承关系:

public class LinkedHashSet<E>
    extends HashSet<E>  //继承了HashSet
    implements Set<E>, //实现了set接口
     Cloneable, //可以进行clone
     java.io.Serializable { //实现了序列化

构造函数 :

LinkedHashSet调用了父类中一个构造函数,而该构造函数创建了一个LinkedHashMap实例; 父类构造函数

   HashSet(int initialCapacity, float loadFactor, boolean dummy) { 
   //子类LinkedHashMap调用的都是这个构造函数:LinkedHashMap;
        map = new LinkedHashMap<>(initialCapacity, loadFactor);
    }

LinkedHashSet构造函数:

 public LinkedHashSet(int initialCapacity, float loadFactor) {
        super(initialCapacity, loadFactor, true);
    }
    public LinkedHashSet(int initialCapacity) {
        super(initialCapacity, .75f, true);
    }
    public LinkedHashSet() {
        super(16, .75f, true);
    }
    public LinkedHashSet(Collection<? extends E> c) {
        super(Math.max(2*c.size(), 11), .75f, true);
        addAll(c);
    }

LinkedHashMap与LinkedHashSet和HashSet的区别:

  •  LinkedHashSet只实现了LinkedHashMap的访问有序;
  •  LinkedHashSet实现了对其它两个类部分功能的封装;
  •  HashSet和LinkedHashSet 都对只对键进行操作,value值都是new Object() ;

LinkedHashSet应用场景:

LinkedHashSet实现了对数据进行去重,并且对集合类数据实现访问有序 ;

到此这篇关于Java的集合LinkedHashSet详解的文章就介绍到这了,更多相关LinkedHashSet详解内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SWT(JFace)体验之FillLayout布局

    SWT(JFace)体验之FillLayout布局

    FillLayout是非常简单的一种布局方式,它会以同样大小对父组件中的子组件进行布局,这些子组件将以一行或一列的形式排列。
    2009-06-06
  • java懒惰评估实现方法

    java懒惰评估实现方法

    这篇文章主要介绍了java懒惰评估如何实现的相关内容及实例,有兴趣的朋友们可以学习参考下。
    2021-05-05
  • Maven热部署devtools的实现示例

    Maven热部署devtools的实现示例

    本文主要介绍了Maven热部署devtools的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 不同Java泛型构造函数的详解

    不同Java泛型构造函数的详解

    这篇文章主要介绍了不同Java泛型构造函数的详解,因为对象是应用类型,对象赋值是指向同一个对象,所以如果需要保存对象某个时刻的状态,就需要构造函数来new一个新的对象。下面我们来详细了解一下吧
    2019-06-06
  • Quarkus改造Pmml模型项目异常记录及解决处理

    Quarkus改造Pmml模型项目异常记录及解决处理

    这篇文章主要为大家介绍了Quarkus改造Pmml模型项目是遇到的异常记录以及解决方法,有需要的同学可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02
  • Java Web中解决路径(绝对路径与相对路径)问题

    Java Web中解决路径(绝对路径与相对路径)问题

    这篇文章主要介绍了Java Web中解决路径问题的相关资料,java 文件路径有绝对路径与相对路径,这里提供了几种方法解决所有路径问题,需要的朋友可以参考下
    2017-01-01
  • JavaGUI实现随机单词答题游戏

    JavaGUI实现随机单词答题游戏

    这篇文章主要为大家详细介绍了JavaGUI实现随机单词答题游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • Java大批量导出Excel数据的优化过程

    Java大批量导出Excel数据的优化过程

    几十万上百万行的数据是很常见的。本文主要介绍了Java大批量导出Excel数据的优化过程,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Java Thread多线程开发中Object类详细讲解

    Java Thread多线程开发中Object类详细讲解

    这篇文章主要介绍了Java Thread多线程开发中Object类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-03-03
  • java调用百度的接口获取起-止位置的距离

    java调用百度的接口获取起-止位置的距离

    本文主要介绍了java调用百度的接口获取起-止位置的距离,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04

最新评论