Java中LinkedList和LinkedHashSet之间的区别

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

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

序号链表链接哈希集
1个实作LinkedList is the implementation of list and deque interface.另一方面,LinkedHashSet是set接口的实现,它继承了Hashset类。
2内部实施LinkedList internally implements or we can say uses doubly linked list to store the elements.另一方面,LinkedHashSet在内部使用LinkedHashMap来存储其元素。
3元素顺序As LinkedList internally used doubly linked list so we can add or remove elements from both ends in case of linkedlist虽然LinkedHashset内部具有Hashmap,所以元素只能插入LinkedHashset的末尾。
4重复项LinkedList could contains multiple number of duplicates in its collection.另一方面,仅像HashSet一样,LinkedHashSet中允许重复元素。
5指数表现LinkedList Insertion, Removal And Retrieval Operations performance of order O(n)LinkedHashSet还为插入,删除和检索操作提供了O(1)阶性能。
6允许为空Any number of null value can be inserted in LinkedList without any restriction.另一方面,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