LinkedHashSet

148 阅读1分钟

LinkedHashSet

特点

  • 继承关系
    extends HashSet
  • 有序性
    有序,与插入顺序一致,插入重复元素不改变顺序
  • null元素
    允许
  • 线程安全
    非线程安全, 遍历时修改抛出ConcurrentModificationException
    可用Collections.synchronizedSet构造线程安全的LinkedHashSet

实现

  1. 继承自HashSet,在构造函数里,调用了父类HashSet的构造函数,传入dummy参数。
  2. HashSet构造函数存在dummy参数时,使用了LinkedHashMap作为存储数据结构,而非默认的HashMap。
  3. LinkedHashMap有序,就保证了LinkedHashSet有序