ArrayList : en Java, ArrayList puede tener duplicados y mantiene el orden de inserción.
HashSet : HashSet es la clase de implementación de Set. No permite duplicados y usa Hashtable internamente.
Hay cuatro formas de convertir ArrayList a HashSet:
- Usando constructor.
- Usando el método add() iterando sobre cada elemento y agregándolo al HashSet.
- Usando el método addAll() que agrega todos los elementos de una sola vez al HashSet.
- usando flujo
Método 1: Usando el constructor
En este ejemplo, crearemos un objeto ArrayList y lo pasaremos al constructor de HashSet. Es el método más simple para convertir en HashSet.
Java
// Java program to convert ArrayList // to HashSet using constructor import java.util.HashSet; import java.util.ArrayList; import java.io.*; class GFG { public static void main(String[] args) { // adding elements to ArrayList object ArrayList<String> gfg = new ArrayList<>(); gfg.add("data structure"); gfg.add("competitive programming"); gfg.add("Interviews"); gfg.add("FANG"); gfg.add("FANG"); // pass ArrayList object into the HashSet object // constructor HashSet<String> hashSet = new HashSet<>(gfg); // printing every element in Set for (String value : hashSet) { System.out.println(value); } } }
FANG data structure Interviews competitive programming
Método 2: Usando el método add():
En esto, iteraremos sobre Arraylist y agregaremos cada elemento en HashSet.
Java
// Java program to convert ArrayList // to HashSet using add() method import java.io.*; import java.util.ArrayList; import java.util.HashSet; class GFG { public static void main(String[] args) { ArrayList<String> gfg = new ArrayList<>(); // adding element to ArrayList gfg.add("data structure"); gfg.add("competitive programming"); gfg.add("Interviews"); gfg.add("FANG"); gfg.add("FANG"); // adding each Arraylist element inside the HashSet HashSet<String> hashSet = new HashSet<>(); // printing each element gfg.forEach(value -> { hashSet.add(value); }); for (String value : hashSet) { System.out.println(value); } } }
FANG data structure Interviews competitive programming
Método 3: Usar el método addAll()
En este ejemplo, simplemente agregaremos el objeto ArrayList completo usando el método addALL() en HashSet.
Java
// Java program to convert ArrayList // to HashSet using addAll() method import java.io.*; import java.util.ArrayList; import java.util.HashSet; class GFG { public static void main(String[] args) { ArrayList<String> gfg = new ArrayList<>(); // adding element into ArrayList object gfg.add("data structure"); gfg.add("competitive programming"); gfg.add("Interviews"); gfg.add("FANG"); gfg.add("FANG"); // adding ArrayList to hashset using addAll() method HashSet<String> hashSet = new HashSet<>(); hashSet.addAll(gfg); // printing each element of hashset for (String value : hashSet) { System.out.println(value); } } }
FANG data structure Interviews competitive programming
Método 4: Uso de flujos .
En este enfoque, usaremos secuencias para iterar sobre cada elemento de ArrayList y luego agregar cada elemento a un conjunto mediante el método de recopilación. Las secuencias son parte de Java 8
Java
// Java program to convert ArrayList // to HashSet using streams import java.io.*; import java.util.ArrayList; import java.util.Set; import java.util.HashSet; import java.util.stream.*; class GFG { public static void main(String[] args) { ArrayList<String> gfg = new ArrayList<>(); gfg.add("data structure"); gfg.add("competitive programming"); gfg.add("Interviews"); gfg.add("FANG"); gfg.add("FANG"); // using stream to convert the ArrayList into set // then typecast into HashSet<String> HashSet<String> hashSet = (HashSet<String>)gfg.stream().collect( Collectors.toSet()); // printing values of the hashSet for (String value : hashSet) { System.out.println(value); } } }
FANG data structure Interviews competitive programming
Publicación traducida automáticamente
Artículo escrito por rajatagrawal5 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA