covert list array
Este tutorial explica cómo convertir una lista de Java en una matriz y otras colecciones. Incluye ejemplos para convertir la lista en matriz, cadena, conjunto y viceversa:
En nuestros tutoriales anteriores, discutimos los detalles de la colección de listas. Hemos visto las diversas operaciones en la lista, iteradores, etc. Dada una lista, podemos convertir esta lista en cualquier otra colección o estructura de datos como cadenas, matrices, ArrayList, set, etc.
=> Visite aquí para ver la serie exclusiva de tutoriales de capacitación en Java.
Lo que vas a aprender:
Conversiones de lista
Aquí, lo que realmente hacemos es transferir los elementos de una colección / estructura a otra y, al hacerlo, en realidad estamos cambiando el diseño de los elementos ya que cada colección o estructura de datos tiene su propio diseño.
En este tutorial, discutiremos algunas conversiones de la lista a otras estructuras de datos y viceversa.
Convertir lista en cadena
Puede convertir fácilmente la lista de elementos en su representación de cadena. En su mayoría, querrá convertir una lista de cadenas o caracteres en una representación de cadena.
Existen varios métodos para convertir la lista en una cadena. Los más populares se analizan a continuación.
# 1) Usando el método toString
Este es el método más simple para convertir una lista en una cadena. En este método, simplemente usa el método 'toString' en una lista que convierte la lista en una representación de cadena.
El programa siguiente muestra la implementación del método toString.
|_+_|Producción:

En este programa, puede ver que después de convertir la lista de caracteres en una representación de cadena, la cadena se refina aún más eliminando los caracteres delimitadores y representándola como una sola palabra.
# 2) Uso de la clase de coleccionistas
Desde Java 8 en adelante, puede hacer uso de las API de transmisión con la clase 'Colectores' para convertir la lista en una cadena.
Ejemplo:
|_+_|Producción:

En el programa anterior, hacemos uso de las API de flujo, mapeamos los valores y luego usamos el método join () de la clase Collectors, y convertimos la lista en una cadena.
# 3) Usando la clase StringBuilder
El tercer método para convertir la lista en cadena es mediante el uso de un objeto StringBuilder. Aquí, cada elemento de la lista se agrega al objeto StringBuilder mediante un bucle. Luego, el objeto StringBuilder se convierte a su representación de cadena utilizando el método toString.
Consulte el siguiente programa para ver la demostración.
|_+_|Producción:

El programa anterior muestra el uso del objeto StringBuilder al que se agregan los elementos de la lista. Luego, el objeto se convierte en una cadena.
Conversión de lista en una matriz
Dada una lista de elementos, debe convertir esta lista en una matriz. Para hacer esto, puede utilizar cualquiera de los métodos que se describen a continuación.
# 1) Usando toArray
La forma más sencilla de convertir una lista en una matriz es utilizar el método 'toArray' de la lista.
El siguiente programa muestra esta implementación del método toArray.
|_+_|Producción:

En el programa anterior, hemos convertido una lista de cadenas en una matriz de cadenas utilizando el método 'toArray'.
# 2) Uso de Java 8 Stream
pasando matrices a métodos en java
El siguiente método para convertir una lista en una matriz es mediante el uso de las API de flujo de Java 8. En esto, la lista se convierte primero en flujo y luego, utilizando stream (). ToArray, se convierte en una matriz.
El siguiente programa Java muestra esta conversión.
|_+_|Producción:

El programa anterior utiliza las API de flujo de Java 8 y convierte la lista en una matriz. Luego, la matriz se imprime utilizando para cada bucle.
# 3) Usando el método get
Este es otro método para convertir la lista en una matriz. En esto, usamos el get () de la lista que se puede usar para recuperar elementos individuales de la lista.
El programa para convertir la lista en una matriz utilizando el método get () se muestra a continuación.
|_+_|Producción:

En el programa anterior, creamos una matriz del mismo tamaño que una lista. Luego, en un bucle, los elementos de la lista se recuperan utilizando el método get () y se asignan a la matriz.
Convertir matriz en lista
Como puede convertir una lista en una matriz, también puede convertir una matriz en una lista en Java. A continuación se muestran algunos de los métodos con los que puede convertir una matriz en una lista.
# 1) Usando código Java simple
Este es el método tradicional de convertir una matriz en una lista. Aquí agrega cada elemento de la matriz a la lista uno por uno usando un bucle. Para esto se utiliza el método de adición de la lista.
El siguiente programa implementa el método tradicional para convertir una matriz en una lista.
|_+_| Producción:

# 2) Usando el método asList ()
El siguiente método para convertir una matriz en una lista es mediante el método asList () de la clase Arrays. Aquí, puede pasar Array como argumento al método asList () y devuelve la lista obtenida.
El siguiente programa muestra esto.
|_+_|Producción:

En el programa anterior, tenemos una matriz de números impares. Luego creamos una lista de enteros y la asignamos a la salida del método asList que es una lista.
# 3) Usando el método Collection.addAll ()
También puede usar el método addAll () de la clase Colecciones, ya que la matriz y la lista son partes del marco de la colección en Java.
El siguiente programa muestra el uso del método Collections.addAll () para convertir una matriz en una lista.
|_+_|Producción:

Aquí hemos inicializado una matriz. Creamos una lista vacía. Luego, se usa el método Collections.addAll () pasando listas y matrices como argumento. La ejecución exitosa de este método tendrá una lista poblada con los elementos de la matriz.
# 4) Uso de secuencias de Java 8
El siguiente enfoque para convertir una matriz en una lista es mediante el uso de la clase de recopiladores y API de secuencia de Java 8. Aquí, la matriz se convierte primero en flujo y luego los elementos se recopilan en una lista mediante flujo. Método de recogida. Finalmente se devuelve la lista.
El siguiente programa muestra la implementación que convierte la matriz en lista usando Stream API.
|_+_|Producción:

En el programa anterior, se crea una matriz de colores. A continuación, se crea una lista vacía y luego se asigna a la lista la lista obtenida de la matriz mediante el uso de la API de flujo.
Convertir lista a conjunto
Un conjunto es una colección desordenada de elementos que no permite valores duplicados. Set es parte del marco de las colecciones de Java. Puede convertir una lista en un conjunto y viceversa si es necesario.
En esta sección, veamos algunos de los métodos que se utilizan para convertir una lista en un conjunto.
# 1) Usando el método tradicional
Puede convertir la lista para configurar utilizando el código tradicional de Java. En esto, puede crear un HashSet o treeSet. Y luego, usando el método add, agregue cada elemento de la lista al conjunto en un ciclo.
Esta implementación se muestra a continuación.
|_+_|Producción:

En el programa anterior, puede ver que hemos creado un objeto HashSet de tipo cadena. Luego, usando el bucle for mejorado, cada elemento de la lista se agrega al conjunto. Finalmente, se imprime el conjunto.
Lectura recomendada = >> HashSet en Java
# 2) Usando HashSet o Treeset Constructor
El siguiente método es usar un constructor de conjuntos. Aquí creamos un constructor de conjuntos (treeSet o HashSet). Se pasa una lista a este constructor como argumento. Usando esta lista, se construye el conjunto.
Consulte el programa a continuación para esta implementación.
|_+_|Producción:

En el programa anterior, creamos tanto HashSet como treeSet pasando la lista como argumento. Finalmente, se muestran los contenidos de HashSet y treeset.
# 3) Usando el método addAll
Este es el mismo que el método addAll de Colecciones que vimos antes. Aquí, el método addAll se utiliza para copiar el contenido de la lista al conjunto.
El siguiente programa muestra el uso del método addAll.
|_+_|Producción:

Este programa crea un objeto HashSet. Luego, el método addAll se invoca en el objeto HashSet con la lista como parámetro. Este método copia el contenido de la lista en el conjunto.
# 4) Uso de secuencias de Java 8
Como ya se vio, también puede usar las secuencias de Java 8 para convertir la lista en cualquier otra colección, incluido el conjunto. Tienes que usar el método stream (). Collect para hacer esto.
El siguiente programa muestra esta implementación.
|_+_|Producción:

El programa anterior es similar al que se muestra en el caso de la conversión de la lista a una matriz. Primero, la lista se convierte en flujo y luego el método de recopilación recopila los elementos del flujo y los convierte en conjunto.
Ahora que hemos visto varios métodos que realizan la conversión de la lista a un conjunto, veamos los métodos que se utilizan para convertir el conjunto a la lista.
Convertir conjunto a lista
De manera similar a la forma en que convierte una lista en un conjunto, también puede convertir un conjunto en una lista. Puede utilizar los mismos métodos descritos anteriormente para esta conversión. La única diferencia es que cambias los lugares de la lista y los configuras en el programa.
A continuación se muestran ejemplos de conversión de un conjunto a una lista para cada método.
# 1) Usando Java simple
|_+_|Producción:

El programa anterior declara e inicializa un conjunto. Luego crea una lista y agrega cada elemento del conjunto a la lista. Finalmente, imprime la lista.
# 2) Usando constructores
|_+_|Producción:

Aquí, puede usar el constructor de listas con un objeto establecido como argumento. Esto copia todos los elementos del conjunto en el objeto de lista.
# 3) Usando el método addAll
|_+_|Producción:

En este programa, se crea un objeto de lista. Luego, usando el método Collections.addAll (), los elementos del conjunto se agregan a la lista.
# 4) Uso de Java 8 Stream
|_+_| Producción:

También puede usar secuencias de Java 8 y el método de recopilación para convertir el conjunto en la lista como se muestra en el programa anterior.
Lista de Array Vs
Analicemos algunas de las diferencias entre una matriz y una lista.
| Formación | Lista |
|---|---|
| La matriz es una estructura de datos básica en Java. | La lista es una interfaz que forma parte del marco de la colección en Java desde el cual se pueden extender muchas de las clases como LinkedList, ArrayList, etc. |
| Tiene un tamaño fijo | El tamaño de la lista es dinámico. |
| Se puede acceder a los elementos de la matriz utilizando (). | Se accede a los miembros de la lista mediante métodos. |
| La matriz puede tener tipos primitivos así como objetos como elementos. | Las listas solo pueden contener objetos. |
| Las matrices pueden usar operadores con sus elementos. | Las listas no pueden utilizar operadores. En cambio, enumera métodos de uso. |
| Las matrices no pueden funcionar con genéricos para garantizar la seguridad de los tipos. | Las listas pueden ser genéricas. |
Preguntas frecuentes
P # 1) ¿Cómo se convierte una lista en una matriz en Java?
Responder: El método básico para convertir una lista en una matriz en Java es utilizar el método 'toArray ()' de la interfaz List.
La siguiente llamada simple convierte la lista en una matriz.
|_+_|También existen otros métodos, como se explicó anteriormente, para convertir la lista en una matriz.
P # 2) ¿Es una matriz una lista en Java?
Responder: No. Una matriz es una estructura básica en Java con una longitud fija. No se extiende desde la interfaz de lista. La estructura que se extiende desde la interfaz de lista y similar a la matriz es ArrayList.
P # 3) ¿Cómo se convierte una matriz en una lista en Java?
Responder: Uno de los métodos básicos para convertir una matriz en una lista en Java es usar el método asList () de la clase Arrays.
|_+_|Aparte de esto, hay más métodos que convierten una matriz en una lista, como se discutió anteriormente en este tutorial.
P # 4) ¿Cuál es un conjunto o lista más rápido en Java?
Responder: Depende de los datos que se almacenen. Si los datos son únicos, la lista es mejor y más rápida. Si tiene un gran conjunto de datos, busque conjuntos. La estructura de conjuntos generalmente requiere 10 veces más memoria que las listas.
P # 5) ¿Cuál es la diferencia entre ArrayList y Set?
Responder: La lista es una colección de elementos ordenados, mientras que el conjunto es una colección de elementos desordenados. La lista puede tener elementos duplicados, pero el conjunto no puede tener elementos duplicados.
Conclusión
En este tutorial, hemos visto varias conversiones de listas a la matriz, el conjunto y viceversa. También hemos visto las principales diferencias entre una matriz y una lista.
En este próximo tutorial, discutiremos las clases de lista como ArrayList, LinkedList, etc.en detalle.
=> Consulte la guía de formación de Java perfecta aquí.
Lectura recomendada
- Java Copy Array: Cómo copiar / clonar una matriz en Java
- Matriz de Java - ¿Cómo imprimir elementos de una matriz en Java?
- Lista de Java: cómo crear, inicializar y usar la lista en Java
- Tipos de datos de matriz: matriz int, matriz doble, matriz de cadenas, etc.
- Matriz de Java: declarar, crear e inicializar una matriz en Java
- Cómo pasar / devolver una matriz en Java
- Tutorial de JAVA para principiantes: más de 100 tutoriales prácticos en vídeo de Java
- Tutorial de longitud de matriz de Java con ejemplos de código