Java Set es parte del paquete java.util y amplía la interfaz java.util.Collection. No permite el uso de elementos duplicados y, como máximo, solo puede acomodar un elemento nulo.
La Lista es una interfaz secundaria de la Colección. Es una colección ordenada de objetos en los que se pueden almacenar valores duplicados. Dado que List conserva el orden de inserción, permite el acceso posicional y la inserción de elementos. La interfaz de lista se implementa mediante las clases ArrayList, LinkedList, Vector y Stack.
A continuación se muestran métodos para convertir Set to List en Java.
- Método de fuerza bruta o ingenuo : este método incluye crear una lista vacía y agregarle todos los elementos del conjunto.
Algoritmo :
- Obtener el Conjunto a convertir.
- Crear una lista vacía
- Inserte cada elemento del conjunto en la lista
- Devolver la Lista formada
Programa:
// Java Program to convert
// Set to List in Java 8
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert set to list
public
static
<T> List<T> convertSetToList(Set<T> set)
{
// create an empty list
List<T> list =
new
ArrayList<>();
// push each element in the set into the list
for
(T t : set)
list.add(t);
// return the list
return
list;
}
public
static
void
main(String args[])
{
// Create a Set using HashSet
Set<String> hash_Set =
new
HashSet<String>();
// Add elements to set
hash_Set.add(
"Geeks"
);
hash_Set.add(
"For"
);
hash_Set.add(
"Geeks"
);
hash_Set.add(
"Example"
);
hash_Set.add(
"Set"
);
// Print the Set
System.out.println(
"Set: "
+ hash_Set);
// construct a new List from Set
List<String> list = convertSetToList(hash_Set);
// Print the List
System.out.println(
"List: "
+ list);
}
}
Producción:Set: [Set, Example, Geeks, For] List: [Set, Example, Geeks, For]
- Con la ayuda de Constructor : las colecciones en Java tienen un constructor en el que se puede pasar el conjunto directo para crear una Lista a partir de él.
Algoritmo :
- Obtener el Conjunto a convertir.
- Cree una lista pasando el conjunto como parámetro al constructor.
- Devolver la Lista formada
Programa:
// Java Program to convert
// Set to List in Java 8
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert set to list
public
static
<T> List<T> convertSetToList(Set<T> set)
{
// create a list from Set
List<T> list =
new
ArrayList<>(set);
// return the list
return
list;
}
public
static
void
main(String args[])
{
// Create a Set using HashSet
Set<String> hash_Set =
new
HashSet<String>();
// Add elements to set
hash_Set.add(
"Geeks"
);
hash_Set.add(
"For"
);
hash_Set.add(
"Geeks"
);
hash_Set.add(
"Example"
);
hash_Set.add(
"Set"
);
// Print the Set
System.out.println(
"Set: "
+ hash_Set);
// construct a new List from Set
List<String> list = convertSetToList(hash_Set);
// Print the List
System.out.println(
"List: "
+ list);
}
}
Producción:Set: [Set, Example, Geeks, For] List: [Set, Example, Geeks, For]
- Usando Java 8 Stream : en Java 8, Stream se puede usar para convertir un conjunto en una lista al convertir el conjunto en un Stream secuencial usando Set.stream() y usando un Collector para recopilar los elementos de entrada en una nueva Lista.
Algoritmo :
- Obtenga el HashMap para convertirlo.
- Crear transmisión desde el conjunto
- Convierta el conjunto en una lista y recójalo
- Devolver la lista recopilada
Programa:
// Java Program to convert
// HashMap to TreeMap in Java 8
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert set to list
public
static
<T> List<T> convertSetToList(Set<T> set)
{
// create a list from Set
return
set
// Create stream from the Set
.stream()
// Convert the set to list and collect it
.collect(Collectors.toList());
}
public
static
void
main(String args[])
{
// Create a Set using HashSet
Set<String> hash_Set =
new
HashSet<String>();
// Add elements to set
hash_Set.add(
"Geeks"
);
hash_Set.add(
"For"
);
hash_Set.add(
"Geeks"
);
hash_Set.add(
"Example"
);
hash_Set.add(
"Set"
);
// Print the Set
System.out.println(
"Set: "
+ hash_Set);
// construct a new List from Set
List<String> list = convertSetToList(hash_Set);
// Print the List
System.out.println(
"List: "
+ list);
}
}
Producción:Set: [Set, Example, Geeks, For] List: [Set, Example, Geeks, For]
- Usando Guava Library List.newArrayList(set) : Lists.newArrayList(set) crea una instancia mutable de ArrayList que contiene los elementos del conjunto especificado.
Algoritmo :
- Obtener el Conjunto a convertir.
- Cree una nueva Lista usando Lists.newArrayList() pasando el conjunto como parámetro a esta función de la biblioteca Guava
- Devolver la Lista formada
Programa:
// Java Program to convert
// HashMap to TreeMap in Java 8
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert set to list
public
static
<T> List<T> convertSetToList(Set<T> set)
{
// create a list from Set
return
Lists.newArrayList(set);
}
public
static
void
main(String args[])
{
// Create a Set using HashSet
Set<String> hash_Set =
new
HashSet<String>();
// Add elements to set
hash_Set.add(
"Geeks"
);
hash_Set.add(
"For"
);
hash_Set.add(
"Geeks"
);
hash_Set.add(
"Example"
);
hash_Set.add(
"Set"
);
// Print the Set
System.out.println(
"Set: "
+ hash_Set);
// construct a new List from Set
List<String> list = convertSetToList(hash_Set);
// Print the List
System.out.println(
"List: "
+ list);
}
}
Producción:
Set: [Set, Example, Geeks, For] List: [Set, Example, Geeks, For]
Publicación traducida automáticamente
Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA