¿Cómo imprimir elementos LinkedHashSet en Java?

LinkedHashSet es una clase secundaria de HashSet en la que no se permiten duplicados pero se conserva el orden de inserción. Los elementos se imprimen en el mismo orden en que se insertaron.

Hay varias formas de imprimir elementos LinkedHashSet:

  1. Simplemente imprimiendo los elementos
  2. Usando el bucle for mejorado
  3. Usando iterador
  4. Usando arrays.toString()
  5. Imprimir elementos de LinkedHashSet que tienen objetos de clase personalizada usando el método .toString() de Object Class .

Método 1: simplemente imprimiendo los elementos en la consola

  • Primero crearemos una instancia de LinkedHashSet, agregaremos los elementos y simplemente la imprimiremos en la consola.
  • Un método es simplemente imprimir el nombre del objeto Collection y se imprimirá el contenido de LinkedHashSet.

Java

// Java program to print the elements of LinkedHashSet
 
import java.util.*;
class GfG {
    public static void main(String args[])
    {
 
        // Creating an instance of LinkedHashSet
        LinkedHashSet<String> hs = new LinkedHashSet<>();
 
        // Adding elements to the LinkedHashSet
        hs.add("Hey");
        hs.add("How");
        hs.add("are");
        hs.add("You");
 
        // Printing
        System.out.println(hs);
    }
}
Producción

[Hey, How, are, You]

Método 2: Uso de Enchanced for loop 

Simplemente podemos imprimir los elementos utilizando el concepto mejorado de bucle for o el concepto de bucle for-each iterando sobre todos los elementos LinkedHashSet.

Para imprimir los elementos usando el ciclo for-each, siga los siguientes pasos:-

  • Configure un bucle for-each declarando una variable del mismo tipo que el tipo base de la clase Collection, es decir, del mismo tipo que los elementos de LinkedHashSet, seguido de dos puntos, que luego es seguido por el nombre del objeto.
  • Dentro del ciclo, simplemente imprima el nombre de la variable para mostrar todo el contenido.

Java

// Java program to print the elements of LinkedHashSet
 
import java.util.*;
class GfG {
    public static void main(String[] args)
    {
        // Creating an instance of LinkedHashSet
        LinkedHashSet<Integer> h = new LinkedHashSet<Integer>();
 
        // Adding elements to the LinkedHashSet
        h.add(1);
        h.add(5);
        h.add(3);
        h.add(9);
 
        // iterating and printing all the elements of
        // LinkedHashSet
        for (int i : h)
        {
            System.out.print(i + " ");
        }
    }
}
Producción

1 5 3 9

Método 3: mediante el uso de un iterador

Podemos usar un iterador sobre elementos LinkedHashSet usando el método de iterador e imprimirlos usando los métodos next() y hasNext().

Para recorrer el contenido de LinkedhashSet, se seguirán los siguientes pasos:-

  • Obtenga un iterador para comenzar llamando a un método Iterator.
  • Configure un bucle que llame a hasNext() e itere hasta que hasNext() devuelva verdadero.
  • Dentro del ciclo, imprime cada elemento usando next().

Java

// Java program to print the elements of LinkedHashSet
 
import java.util.*;
 
class GfG {
    public static void main(String[] args)
    {
 
        // Creating an instance of LinkedHashSet
        LinkedHashSet<String> hnames = new LinkedHashSet<String>();
 
        // Adding elements to the LinkedHashSet
        hnames.add("Alok");
        hnames.add("Ayush");
        hnames.add("Abhinav");
        hnames.add("Akash");
        hnames.add("Atul");
 
        // Obtaining an Iterator
        Iterator<String> itr = hnames.iterator();
 
        // printing the elements in LinkedHashSet
        while (itr.hasNext())
        {
            System.out.println(itr.next());
        }
    }
}
Producción

Alok
Ayush
Abhinav
Akash
Atul

Método 4: Usar Array.toString()

Para usarlo, primero debemos convertir LinkedHashSet en una array y luego usar el método .toString() para imprimirlos.

  • Convierta el contenido de LinkedHashSet en un Array usando el método .toArray.
  • Ahora convierta los elementos de las arrays a su representación de string usando Arrays.toString() e imprímalos.

Java

// Java program to print the elements of LinkedHashSet
 
import java.util.*;
 
class GfG {
    public static void main(String[] args)
    {
 
        // Creating an instance of LinkedHashSet
        LinkedHashSet<Integer> hnum
            = new LinkedHashSet<Integer>();
 
        // Adding elements to the LinkedHashSet
        hnum.add(678);
        hnum.add(789);
        hnum.add(876);
        hnum.add(589);
 
        // Converting the LinkedHashSet to Array
        // and then converting the array to string
        System.out.println(Arrays.toString(hnum.toArray()));
    }
}
Producción

[678, 789, 876, 589]

Método 5: Imprimir elementos de LinkedHashSet que tienen objetos de clase personalizada 

  • Podemos imprimir el contenido de la clase personalizada simplemente con el siguiente enfoque, pero hay una cosa clave que debe tenerse en cuenta antes de imprimirlo.
  • Cada vez que se imprime un objeto, se llama a su método .toString() para obtener su representación de string, si la clase personalizada no ha anulado el método, se hereda de la clase Object.
  • El toString() de la clase Object imprime el contenido del objeto como «ClassName@ObjectHashCode», este no sería nuestro requisito, por lo que anulamos el toString() en la clase personalizada para que solo la información que necesitamos sea impreso.

Java

// Java program to print the elements of LinkedHashSet
 
import java.util.*;
class employee {
    private Integer salary;
    private String name;
 
    public employee(Integer salary, String name)
    {
        this.salary = salary;
        this.name = name;
    }
     
    // This method is of Object Class
    // and whenever the object of employee
    // class would be made then this method
    // will be called by default
    public String toString()
    {
        return "[" + this.name + "=>" + this.salary + "]";
    }
}
 
class GfG {
    public static void main(String[] args)
    {
 
        // Creating an instance of LinkedHashSet
        LinkedHashSet<employee> hemp = new LinkedHashSet<employee>();
 
        hemp.add(new employee(100000, "Ankush"));
        hemp.add(new employee(200000, "Atul"));
 
        System.out.println(hemp);
    }
}
Producción

[[Ankush=>100000], [Atul=>200000]]

Publicación traducida automáticamente

Artículo escrito por namitachaudhary60 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *