LinkedHashSets

Class LinkedHashSet is the Collections Framework's realization of the concept of the SequencedSet. It can be used when the order of the elements in the set should be predictable, since this guarantee is not provided by the HashSet. Elements in a LinkedHashSet are stored and iterable in the order they were added to the set.

package collections.sets;

import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.SequencedCollection;
import java.util.SequencedSet;

public class UsingLinkedHashSet {
	public static void main(String[] args) {
		
		String[] letters = {"A", "C", "B", "A"};
		LinkedHashSet<String> set = new LinkedHashSet<>(Arrays.asList(letters)); // [A,C,B]

set.add("D"); // [A,C,B,D] set.add("C"); // [A,C,B,D]
// Reversed Views
SequencedSet<String> reversed = set.reversed(); // [D,B,C,A] set.remove("D"); System.out.println(reversed); // [B,C,A]
// Reinsertion SequencedCollection<String> sequence = set; sequence.addFirst("D"); // [D,A,C,B]
sequence.addFirst("A"); // [A,D,C,B] sequence.addLast("C"); // [A,D,B,C]
} }