Convertir String en ArrayList en Java

Mohammad Irfan 12 octubre 2023
  1. Convierta una cadena en ArrayList utilizando los métodos charAt() y add() en Java
  2. Convierta una cadena en ArrayList utilizando el método toCharArray() en Java
  3. El método split() en Java
  4. Convierta una cadena en ArrayList utilizando el método split() en Java
  5. Cree una ArrayList utilizando el método split() en Java
  6. Convertir cadena de usuario en ArrayList en Java
  7. Convertir un array de cadenas en ArrayList en Java
  8. Convertir una cadena en ArrayList en Java
Convertir String en ArrayList en Java

Este tutorial presenta la conversión de String a ArrayList en Java y enumera algunos códigos de ejemplo para comprender el tema.

Una cadena se define como una secuencia de caracteres y una ArrayList se utiliza para almacenar una secuencia ordenada de datos. Convertir una cadena en una ArrayList requiere que tomemos cada carácter de la cadena y lo agreguemos a la ArrayList.

En este artículo, discutiremos las diferentes formas en que podemos hacer esto.

Convierta una cadena en ArrayList utilizando los métodos charAt() y add() en Java

Una solución simple puede ser iterar a través de cada carácter de la cadena y agregar ese carácter a la ArrayList. Usaremos el método charAt() para acceder a los caracteres de la cadena, y luego podemos agregarlos a la ArrayList usando el método add().

El código para este enfoque se muestra a continuación.

import java.util.ArrayList;
public class SimpleTesting {
  public static void main(String[] args) {
    String s = "sample";
    ArrayList<Character> list = new ArrayList<Character>();
    for (int i = 0; i < s.length(); i++) {
      char currentCharacter = s.charAt(i); // getting the character at current index
      list.add(currentCharacter); // adding the character to the list
    }
    System.out.println("The String is: " + s);
    System.out.print("The ArrayList is: " + list);
  }
}

Producción :

The String is: sample
The ArrayList is: [s, a, m, p, l, e]

No podemos utilizar este enfoque si deseamos hacer algo más avanzado. Por ejemplo, si queremos agregar solo las palabras de una oración a una ArrayList e ignorar las puntuaciones, será necesario un procesamiento adicional.

Convierta una cadena en ArrayList utilizando el método toCharArray() en Java

El método toCharArray() se puede utilizar en una cadena para convertirla en un array de caracteres. Luego podemos iterar sobre esta matriz de caracteres y agregar cada carácter a la ArrayList.

Vea el ejemplo a continuación.

import java.util.ArrayList;
public class Main {
  public static void main(String[] args) {
    String s = "sample";
    ArrayList<Character> list = new ArrayList<Character>();
    char[] characterArray = s.toCharArray();
    for (char c : characterArray) // iterating through the character array
      list.add(c);
    System.out.println("The String is: " + s);
    System.out.print("The ArrayList is: " + list);
  }
}

Producción :

The String is: sample
The ArrayList is: [s, a, m, p, l, e]

Este es un método simple que se puede utilizar si no queremos hacer nada complicado. Sin embargo, al igual que el enfoque discutido en la sección anterior, no podemos usar esto si vamos a hacer algún procesamiento en la cadena (como eliminar signos de puntuación) antes de convertirla en una ArrayList.

El método split() en Java

El método string split() toma una expresión regular o patrón como parámetro y divide la cadena en un array de cadenas dependiendo de los patrones coincidentes. Este método devuelve un array de cadenas.

Por ejemplo, si pasamos la cadena string of words al método split(), y el patrón es un espacio en blanco simple (indicado por //s+), devolverá el array ["string", "of", "words"].

import java.util.Arrays;
public class Main {
  public static void main(String[] args) {
    String s = "string of words";
    String[] strArr = s.split("\\s+"); // Splitting using whitespace
    System.out.println("The String is: " + s);
    System.out.print("The String Array after splitting is: " + Arrays.toString(strArr));
  }
}

Producción :

The String is: string of words
The String Array after splitting is: [string, of, words]

Convierta una cadena en ArrayList utilizando el método split() en Java

Podemos crear una ArrayList a partir del array de cadenas devuelta utilizando el método asList() de la clase Arrays. El siguiente código demuestra esto.

import java.util.ArrayList;
import java.util.Arrays;
public class Main {
  public static void main(String[] args) {
    String s = "string of words";
    String[] strArr = s.split("\\s+"); // Splitting using whitespace
    ArrayList<String> list = new ArrayList<String>(Arrays.asList(strArr));
    System.out.println("The String is: " + s);
    System.out.print("The ArrayList is: " + list);
  }
}

Producción :

The String is: string of words
The ArrayList is: [string, of, words]

Cree una ArrayList utilizando el método split() en Java

El método split() debe cambiarse de acuerdo con nuestras necesidades. Por ejemplo, si queremos crear una ArrayList de caracteres individuales de la cadena sample, entonces el método split() necesita una expresión regular diferente.

import java.util.ArrayList;
import java.util.Arrays;
public class Main {
  public static void main(String[] args) {
    String s = "sample";
    String[] strArr = s.split(""); // Splitting string into individual characters
    ArrayList<String> list = new ArrayList<String>(Arrays.asList(strArr));
    System.out.println("The String is: " + s);
    System.out.print("The ArrayList is: " + list);
  }
}

Producción :

The String is: sample
The ArrayList is: [s, a, m, p, l, e]

Convertir cadena de usuario en ArrayList en Java

Supongamos que tomamos una cadena de entrada del usuario que contiene los nombres de los empleados separados por comas, y tenemos que hacer una ArrayList que incluya el nombre de cada empleado.

Podemos usar el método split() para dividir la cadena en un array de nombres de empleados, y luego simplemente podemos convertirla en una ArrayList. El método split() es perfecto para esta tarea ya que necesitamos eliminar las comas antes de crear la ArrayList.

Vea el ejemplo a continuación.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class Main {
  public static void main(String[] args) {
    String employeeNames;
    Scanner scanner = new Scanner(System.in);
    System.out.println("Enter employee names separated by comma");
    employeeNames = scanner.nextLine(); // taking user input
    scanner.close();
    String[] employeeNamesSplit = employeeNames.split(","); // Splitting names
    ArrayList<String> list = new ArrayList<String>(Arrays.asList(employeeNamesSplit));
    System.out.println("The String is: " + employeeNames);
    System.out.print("The ArrayList is: " + list);
  }
}

Producción :

Enter employee names separated by comma
Justin, Jack, Jessica, Victor
The String is: Justin, Jack, Jessica, Victor
The ArrayList is: [Justin,  Jack,  Jessica,  Victor]

Convertir un array de cadenas en ArrayList en Java

Los arrays son excelentes para almacenar datos de forma ordenada, pero su tamaño limitado puede restringir algunas operaciones importantes. Simplemente podemos convertir un array de cadenas en una ArrayList utilizando el método asList(). Simplemente copiará todos los elementos del array en la lista.

El siguiente código demuestra esto.

import java.util.ArrayList;
import java.util.Arrays;
public class Main {
  public static void main(String[] args) {
    String[] strArr = {"Hello", "Hola", "Ola"};
    ArrayList<String> strList = new ArrayList<String>(Arrays.asList(strArr));
    System.out.println("The String Array is: " + Arrays.toString(strArr));
    System.out.println("The Array List is: " + strList);
  }
}

Producción :

The String Array is: [Hello, Hola, Ola]
The Array List is: [Hello, Hola, Ola]

Convertir una cadena en ArrayList en Java

Las cadenas se usan comúnmente para muchos propósitos diferentes, pero son inmutables y no podemos aplicarles cambios. Una ArrayList, por otro lado, proporciona mucha más flexibilidad. Podemos crear una ArrayList a partir de los caracteres individuales de la cadena, o si necesitamos hacer algo más complicado (como crear una ArrayList de nombres a partir de una cadena separada por comas), podemos usar el split() método.

En general, el método split() es la forma más fácil y preferida de convertir una cadena en una ArrayList.

Artículo relacionado - Java String

Artículo relacionado - Java ArrayList

Artículo relacionado - Java Array