Java: la clase LinkedHashSet

Esta clase extiende HashSet, pero no agrega miembros propios.

LinkedHashSet mantiene una lista vinculada de las entradas en el conjunto, en el orden en que se insertaron. Esto permite la iteración del orden de inserción sobre el conjunto.

Es decir, al recorrer un LinkedHashSet con un iterador, los elementos se devolverán en el orden en que se insertaron.

El código hash se utiliza luego como índice en el que se almacenan los datos asociados con la clave. La transformación de la clave en su código hash se realiza automáticamente.

A continuación se muestra la lista de constructores compatibles con LinkedHashSet.

No Señor. Constructor y descripción
1

HashSet( )

Este constructor construye un HashSet predeterminado.

2

HashSet(Collection c)

Este constructor inicializa el conjunto de hash utilizando los elementos de la colección. c.

3

LinkedHashSet(int capacity)

Este constructor inicializa la capacidad del linkhashset a la capacidad de valor entero dado. La capacidad crece automáticamente a medida que se agregan elementos al HashSet.

4

LinkedHashSet(int capacity, float fillRatio)

Este constructor inicializa tanto la capacidad como la relación de llenado (también llamada capacidad de carga) del conjunto hash a partir de sus argumentos.

Ejemplo

El siguiente programa ilustra varios de los métodos compatibles con LinkedHashSet:

import java.util.*;
public class HashSetDemo {

   public static void main(String args[]) {
      // create a hash set
      LinkedHashSet hs = new LinkedHashSet();
      
      // add elements to the hash set
      hs.add("B");
      hs.add("A");
      hs.add("D");
      hs.add("E");
      hs.add("C");
      hs.add("F");
      System.out.println(hs);
   }
}

Esto producirá el siguiente resultado:

Salida

[B, A, D, E, C, F]