Java 中 LinkedList 和 LinkedHashSet 的区别


LinkedList 和 LinkedHashSet 都是 Java 集合框架中最重要的类之一。

以下是 LinkedList 和 LinkedHashSet 之间的重要区别。

序号 关键 LinkedList LinkedHashSet
1 实现 LinkedList 是 list 和 deque 接口的实现。 另一方面,LinkedHashSet 是 set 接口的实现,并且继承了 Hashset 类。
2 内部实现 LinkedList 在内部实现或我们可以说使用双向链表来存储元素。 另一方面,LinkedHashSet 在内部使用 LinkedHashMap 来存储其元素。
3 元素顺序 由于 LinkedList 在内部使用双向链表,因此在 LinkedList 的情况下,我们可以从两端添加或删除元素。 而 LinkedHashset 在内部具有 Hashmap,因此元素只能插入到 LinkedHashset 的末尾。
4 重复项 LinkedList 的集合中可以包含多个重复项。 另一方面,与 HashSet 一样,LinkedHashSet 中只允许重复元素。
5 索引性能 LinkedList 插入、删除和检索操作的性能为 O(n) 阶。 LinkedHashSet 也为插入、删除和检索操作提供了 O(1) 阶的性能。
6 允许空值 可以在 LinkedList 中插入任意数量的空值,没有任何限制。 另一方面,LinkedHashset 在其集合中只允许一个空值,之后不允许添加任何空值。

LinkedList 与 LinkedHashset

示例

import java.util.*;
public class JavaTester {
   public static void main(String args[]){
      LinkedList<String> object = new LinkedList<String>();
      object.add("A");
      object.add("B");
      object.addLast("C");
      object.addFirst("D");
      object.add(2, "E");
      object.add(null);
      object.add(null);
      System.out.println("Linked list : " + object);
      System.out.println("Size of List:" + object.size());
   }
}

输出

Linked list : [D, A, E, B, C, null, null]
Size of List:7

示例

import java.util.LinkedHashSet;
public class JavaTester {
   public static void main(String[] args){
      LinkedHashSet<String> linkedset = new LinkedHashSet<String>();
      linkedset.add("A");
      linkedset.add("B");
      linkedset.add("C");
      linkedset.add("D");
      System.out.println("LinkedHashSet:" + linkedset);
      System.out.println("Size of LinkedHashSet = " + linkedset.size());
      linkedset.add("A");
      System.out.println("After adding duplicate element " + linkedset);
      System.out.println("Size of LinkedHashSet = " + linkedset.size());
      linkedset.add(null);
      linkedset.add(null);
      System.out.println("After adding null element " + linkedset);
      System.out.println("Size of LinkedHashSet = " + linkedset.size());
   }
}

输出

LinkedHashSet:[A, B, C, D]
Size of LinkedHashSet = 4
After adding duplicate element [A, B, C, D]
Size of LinkedHashSet = 4
After adding null element [A, B, C, D, null]
Size of LinkedHashSet = 5

更新于: 2023-12-07

2K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.