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+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告