Saturday, September 6, 2025
HomeLanguagesJavaDifference Between LinkedList and LinkedHashSet in Java

Difference Between LinkedList and LinkedHashSet in Java

In this article you will learn difference between LinkedList and LinkedHashSet in java.

Prerequisite: LinkedList : LinkedHashSet

LinkedList class implements the List and Deque interface and extends from AbstractSequentialList class. LinkedList class uses doubly linked list to store the elements. It provides a linked-list data structure.

Java LinkedHashSet class is a Hash table and Linked list implementation of the set interface. It inherits HashSet class and implements Set interface. LinkedHashSet implementations of Set interface, there are some differences exist between them.

Lets See Difference Between LinkedList and LinkedHashSet in Java
  1. Inheritance:
  2. How work internally
    Java LinkedList class uses doubly linked list to store the elements while LinkedHashSet uses LinkedHashMap internally to store it’s elements.
  3. uniqueness:
    LinkedList class can contain duplicate elements while LinkedHashSet contains unique elements only like HashSet.
  4. Insertion:
    LinkedList in case of doubly linked list, we can add or remove elements from both side while LinkedHashSet insert at the end.
  5. Constructor:
    LinkedList have two constructor LinkedList() and LinkedList(Collection o) while LinkedHashSet have four constructor HashSet(), HashSet(Collection c), LinkedHashSet(int capacity) and LinkedHashSet(int capacity, float fillRatio)
  6. Insertion, Removal And Retrieval Operations:
    LinkedList Insertion, Removal And Retrieval Operations performance of order O(n) while LinkedHashSet also gives performance of order O(1) for insertion, removal and retrieval operations.
  7. compare the elements:
    LinkedList use equals() method LinkedHashSet also uses equals() and hashCode() methods to compare the elements.
  8. Null Elements:
    LinkedList allow any number of null values while LinkedHashSet also allows maximum one null element.
  9. Syntax:
    LinkedList syntax is:
    public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, Serializable

    LinkedHashSet syntax is:

    public class LinkedHashSet extends HashSet implements Set, Cloneable, Serializable

Example of LinkedList:




// Java code for Linked List implementation
  
import java.util.*;
  
public class Test {
    public static void main(String args[])
    {
        // Creating object of class linked list
        LinkedList<String> object = new LinkedList<String>();
  
        // Adding elements to the linked list
        // and see carefully element are duplicate, null
        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());
    }
}


Output:

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

Example of LinkedHashSet:




import java.util.LinkedHashSet;
public class Demo {
    public static void main(String[] args)
    {
        LinkedHashSet<String> linkedset = new LinkedHashSet<String>();
  
        // Adding element to LinkedHashSet
        linkedset.add("A");
        linkedset.add("B");
        linkedset.add("C");
        linkedset.add("D");
  
        System.out.println("Original LinkedHashSet:" + linkedset);
        System.out.println("Size of LinkedHashSet = " + linkedset.size());
  
        // trying to add duplicate
        linkedset.add("A");
        System.out.println("After adding duplicate element " + linkedset);
        System.out.println("Size of LinkedHashSet = " + linkedset.size());
  
        // trying to add null value more than one
        linkedset.add(null);
        linkedset.add(null);
        System.out.println("After adding two null element " + linkedset);
        System.out.println("Size of LinkedHashSet = " + linkedset.size());
    }
}


Output:

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

Most Popular

Dominic
32270 POSTS0 COMMENTS
Milvus
82 POSTS0 COMMENTS
Nango Kala
6639 POSTS0 COMMENTS
Nicole Veronica
11803 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11869 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7029 POSTS0 COMMENTS
Thapelo Manthata
6705 POSTS0 COMMENTS
Umr Jansen
6721 POSTS0 COMMENTS