Java 中 LinkedList 和 LinkedHashSet 的区别

java 8object oriented programmingprogramming更新于 2024/11/8 8:52:00

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

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

Sr.不。关键LinkedListLinkedHashSet
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 的示例

JavaTester.java

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

示例

JavaTester.java

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

相关文章