Java LinkedHashSet Class


The Java LinkedHashSet class is a Hash table and Linked list implementation of the Set interface, with predictable iteration order.Following are the important points about LinkedHashSet −

  • This class provides all of the optional Set operations, and permits null elements.

Class declaration

Following is the declaration for java.util.LinkedHashSet class −

public class LinkedHashSet<E>
   extends HashSet<E>
   implements Set<E>, Cloneable, Serializable


Following is the parameter for java.util.LinkedHashSet class −

E − This is the type of elements maintained by this set.

Class constructors

Sr.No. Constructor & Description


This constructs a new, empty linked hash set with the default initial capacity (16) and load factor (0.75).


LinkedHashSet(Collection<? extends E> c)

This constructs a new linked hash set with the same elements as the specified collection.


LinkedHashSet(int initialCapacity)

This constructs a new, empty linked hash set with the specified initial capacity and the default load factor (0.75).


LinkedHashSet(int initialCapacity, float loadFactor)

This constructs a new, empty linked hash set with the specified initial capacity and load factor.

Class methods

Sr.No. Method & Description
1 Spliterator<E> spliterator()

This method returns a late-binding and fail-fast Spliterator over the elements in this set.

This class inherits methods from the following classes −

  • java.util.HashSet
  • java.util.AbstractSet
  • java.util.AbstractCollection
  • java.util.Object
  • java.util.Set

Getting a Spliterator() to Iterate Entries of LinkedHashSet Example

The following example shows the usage of Java LinkedHashSet spliterator() method to iterate entries of the LinkedHashSet. We've created a LinkedHashSet object of Integer. Then few entries are added using add() method and then an spliterator is retrieved using spliterator() method and each value is printed by iterating through the spliterator.

package com.tutorialspoint;

import java.util.LinkedHashSet;
import java.util.Spliterator;

public class LinkedHashSetDemo {
   public static void main(String args[]) {
      // create hash set
      LinkedHashSet <Integer> newset = new LinkedHashSet <>();      

      // populate hash set

      // create an spliterator
      Spliterator<Integer> spliterator = newset.spliterator(); 

      // check values
      spliterator.forEachRemaining(v -> System.out.println(v));

Let us compile and run the above program, this will produce the following result.