Converter String em ArrayList em Java

Mohammad Irfan 12 outubro 2023
  1. Converter uma string em ArrayList usando os métodos charAt() e add() em Java
  2. Converta uma string em ArrayList usando o método toCharArray() em Java
  3. O método split() em Java
  4. Converta uma string em ArrayList usando o método split() em Java
  5. Crie um ArrayList usando o método split() em Java
  6. Converter string de usuário em ArrayList em Java
  7. Converta uma String Array em ArrayList em Java
  8. Converta uma string em ArrayList em Java
Converter String em ArrayList em Java

Este tutorial apresenta a conversão de String em ArrayList em Java e lista alguns códigos de exemplo para entender o tópico.

Uma string é definida como uma sequência de caracteres e uma ArrayList é usada para armazenar uma sequência ordenada de dados. A conversão de uma string em uma ArrayList exige que tomemos cada caractere da string e os adicionemos à ArrayList.

Neste artigo, discutiremos as diferentes maneiras pelas quais podemos fazer isso.

Converter uma string em ArrayList usando os métodos charAt() e add() em Java

Uma solução simples pode ser iterar por meio de cada caractere da string e adicionar esse caractere a ArrayList. Usaremos o método charAt() para acessar os caracteres da string, e então podemos adicioná-los a ArrayList usando o método add().

O código para essa abordagem é mostrado abaixo.

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);
  }
}

Produção:

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

Não podemos usar essa abordagem se quisermos fazer algo mais avançado. Por exemplo, se quisermos adicionar apenas as palavras de uma frase a uma ArrayList e ignorar as pontuações, será necessário um processamento posterior.

Converta uma string em ArrayList usando o método toCharArray() em Java

O método toCharArray() pode ser usado em uma string para convertê-la em um array de caracteres. Podemos então iterar sobre esta matriz de caracteres e adicionar cada caractere ao ArrayList.

Veja o exemplo abaixo.

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);
  }
}

Produção:

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

Este é um método simples que pode ser usado se não quisermos fazer nada complicado. No entanto, assim como a abordagem discutida na seção anterior, não podemos usar isso se vamos fazer algum processamento na string (como remover pontuações) antes de convertê-la em uma ArrayList.

O método split() em Java

O método string split() leva uma expressão regular ou padrão como parâmetro e divide a string em um array de strings dependendo dos padrões correspondentes. Este método retorna um array de string.

Por exemplo, se passarmos a string string of words para o método split(), e o padrão for um único espaço em branco (denotado por //s+), ele retornará a matriz ["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));
  }
}

Produção:

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

Converta uma string em ArrayList usando o método split() em Java

Podemos criar um ArrayList a partir do array de strings retornado usando o método asList() da classe Arrays. O código a seguir demonstra isso.

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);
  }
}

Produção:

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

Crie um ArrayList usando o método split() em Java

O método split() precisa ser alterado de acordo com nossas necessidades. Por exemplo, se quisermos criar uma ArrayList de caracteres individuais da string sample, o método split() precisa de uma expressão 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);
  }
}

Produção:

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

Converter string de usuário em ArrayList em Java

Suponha que pegamos uma string de entrada do usuário que contém nomes de funcionários separados por vírgula e temos que fazer uma ArrayList que inclui o nome de cada funcionário.

Podemos usar o método split() para dividir a string em um array de nomes de funcionários e, então, podemos simplesmente convertê-la em uma ArrayList. O método split() é perfeito para esta tarefa, pois precisamos remover as vírgulas antes de criar o ArrayList.

Veja o exemplo abaixo.

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);
  }
}

Produção:

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

Converta uma String Array em ArrayList em Java

Os arrays são ótimos para armazenar dados de maneira ordenada, mas seu tamanho limitado pode restringir algumas operações importantes. Podemos simplesmente converter um array de string em uma ArrayList usando o método asList(). Ele simplesmente copiará todos os itens do array para a lista.

O código a seguir demonstra isso.

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);
  }
}

Produção:

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

Converta uma string em ArrayList em Java

Strings são comumente usados ​​para muitos propósitos diferentes, mas eles são imutáveis ​​e não podemos aplicar alterações a eles. Uma ArrayList, por outro lado, oferece muito mais flexibilidade. Podemos criar uma ArrayList a partir dos caracteres individuais da string ou, se precisarmos fazer algo mais complicado (como criar uma ArrayList de nomes a partir de uma string separada por vírgulas), podemos usar o método split() método.

No geral, o método split() é a maneira mais fácil e preferida de converter uma string em uma ArrayList.

Artigo relacionado - Java String

Artigo relacionado - Java ArrayList

Artigo relacionado - Java Array