LinkedHashSet es una versión ordenada de HashSet que mantiene una lista doblemente vinculada en todos los elementos. Cuando se necesita mantener el orden de iteración, se utiliza esta clase. Al iterar a través de un HashSet , el orden es impredecible, mientras que un LinkedHashSet nos permite iterar a través de los elementos en el orden en que se insertaron. Al recorrer LinkedHashSet con un iterador, los elementos volverán al orden en que se insertaron.
Diferentes formas de iterar elementos LinkedHashSet:
- Usando el ciclo for-each
- Usar iteradores
- Uso de secuencias JDK 1.8
Método 1: usar el ciclo for-each
Java
// Java Program to Iterate LinkedHashSet Elements import java.util.*; import java.lang.*; import java.io.*; class GFG { // Main driver method public static void main(String[] args) throws java.lang.Exception { // Creating a LinkedHashSet LinkedHashSet<Integer> hashSet = new LinkedHashSet<Integer>(); // Adding elements to LinkedHashSet // Custom inputs hashSet.add(1); hashSet.add(2); hashSet.add(3); hashSet.add(4); hashSet.add(5); // Iteration over HashSet // using for-each loop for (Integer element : hashSet) // Print the elements of LinkedHashSet created above System.out.println("Element is " + element); } }
Producción
Element is 1 Element is 2 Element is 3 Element is 4 Element is 5
Método 2: usar iteradores
Java
// Java Program to Iterate LinkedHashSet Elements import java.util.*; import java.lang.*; import java.io.*; class GFG { // Main driver method public static void main(String[] args) throws java.lang.Exception { // Creating a LinkedHashSet LinkedHashSet<Integer> hashSet = new LinkedHashSet<Integer>(); // Adding elements to LinkedHashSet Custom inputs hashSet.add(1); hashSet.add(2); hashSet.add(3); hashSet.add(4); hashSet.add(5); // Method returning iterator of same elements // as in above LinkedHashSet Iterator iter = hashSet.iterator(); // Condition check // hasNext() method returns true // if iterator has more elements to iterate // else returns false (where cond violates) while (iter.hasNext()) // Print all the elements of LinkedHashSet // using next() method System.out.println("Element is " + iter.next()); } }
Producción
Element is 1 Element is 2 Element is 3 Element is 4 Element is 5
Método 3: Uso de secuencias JDK 1.8
Java
// Java Program to Iterate LinkedHashSet Elements import java.util.*; import java.lang.*; import java.io.*; class GFG { // Main driver method public static void main(String[] args) throws java.lang.Exception { // Creating a LinkedHashSet LinkedHashSet<Integer> hashSet = new LinkedHashSet<Integer>(); // Adding elements to LinkedHashSet // Custom inputs hashSet.add(1); hashSet.add(2); hashSet.add(3); hashSet.add(4); hashSet.add(5); // Method returning iterator of same elements // as in above LinkedHashSet Iterator iter = hashSet.iterator(); // Stream API used to process collection // of objects // Iterating using for-each hashSet.stream().forEach(element -> { // Print all elements of LinkedHashSet System.out.println("Element is " + element); }); } }
Producción
Element is 1 Element is 2 Element is 3 Element is 4 Element is 5