Convertir une chaîne en ArrayList en Java

Mohammad Irfan 12 octobre 2023
  1. Convertir une chaîne en ArrayList en utilisant les méthodes charAt() et add() en Java
  2. Convertir une chaîne en ArrayList à l’aide de la méthode toCharArray() en Java
  3. La méthode split() en Java
  4. Convertir une chaîne en ArrayList à l’aide de la méthode split() en Java
  5. Créer une ArrayList à l’aide de la méthode split() en Java
  6. Convertir la chaîne utilisateur en ArrayList en Java
  7. Convertir un tableau de chaînes en ArrayList en Java
  8. Convertir une chaîne en ArrayList en Java
Convertir une chaîne en ArrayList en Java

Ce tutoriel présente la conversion de String en ArrayList en Java et répertorie quelques exemples de codes pour comprendre le sujet.

Une chaîne est définie comme une séquence de caractères, et une ArrayList est utilisée pour stocker une séquence ordonnée de données. La conversion d’une chaîne en ArrayList nous oblige à prendre chaque caractère de la chaîne et à l’ajouter à la ArrayList.

Dans cet article, nous allons discuter des différentes façons dont nous pouvons le faire.

Convertir une chaîne en ArrayList en utilisant les méthodes charAt() et add() en Java

Une solution simple peut consister à parcourir chaque caractère de la chaîne et à ajouter ce caractère à la ArrayList. Nous utiliserons la méthode charAt() pour accéder aux caractères de la chaîne, puis nous pourrons les ajouter à la ArrayList en utilisant la méthode add().

Le code de cette approche est présenté ci-dessous.

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

Production:

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

Nous ne pouvons pas utiliser cette approche si nous souhaitons faire quelque chose de plus avancé. Par exemple, si nous voulons ajouter uniquement les mots d’une phrase à une ArrayList et ignorer les ponctuations, un traitement supplémentaire sera nécessaire.

Convertir une chaîne en ArrayList à l’aide de la méthode toCharArray() en Java

La méthode toCharArray() peut être utilisée sur une chaîne pour la convertir en un tableau de caractères. Nous pouvons ensuite parcourir ce tableau de caractères et ajouter chaque caractère à la ArrayList.

Voir l’exemple ci-dessous.

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

Production:

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

C’est une méthode simple qui peut être utilisée si nous ne voulons rien faire de compliqué. Cependant, tout comme l’approche discutée dans la section précédente, nous ne pouvons pas l’utiliser si nous allons effectuer un traitement sur la chaîne (comme supprimer les ponctuations) avant de la convertir en une ArrayList.

La méthode split() en Java

La méthode de chaîne split() prend une expression régulière ou un modèle en tant que paramètre et divise la chaîne en un tableau de chaînes en fonction des modèles correspondants. Cette méthode renvoie un tableau de chaînes.

Par exemple, si nous passons la chaîne string of words à la méthode split(), et que le motif est un seul espace blanc (noté //s+), alors il renverra le tableau ["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));
  }
}

Production:

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

Convertir une chaîne en ArrayList à l’aide de la méthode split() en Java

Nous pouvons créer une ArrayList à partir du tableau de chaînes renvoyé en utilisant la méthode asList() de la classe Arrays. Le code suivant le démontre.

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

Production:

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

Créer une ArrayList à l’aide de la méthode split() en Java

La méthode split() doit être modifiée en fonction de nos besoins. Par exemple, si nous voulons créer une ArrayList de caractères individuels de la chaîne sample, alors la méthode split() a besoin d’une expression régulière différente.

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

Production:

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

Convertir la chaîne utilisateur en ArrayList en Java

Supposons que nous prenions une chaîne d’entrée de l’utilisateur qui contient des noms d’employés séparés par des virgules, et que nous devions créer une ArrayList qui inclut le nom de chaque employé.

Nous pouvons utiliser la méthode split() pour diviser la chaîne en un tableau de noms d’employés, puis nous pouvons simplement la convertir en ArrayList. La méthode split() est parfaite pour cette tâche car nous devons supprimer les virgules avant de créer le ArrayList.

Voir l’exemple ci-dessous.

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

Production:

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 tableau de chaînes en ArrayList en Java

Les tableaux sont parfaits pour stocker des données de manière ordonnée, mais leur taille limitée peut restreindre certaines opérations importantes. Nous pouvons simplement convertir un tableau de chaînes en un ArrayList en utilisant la méthode asList(). Il copiera simplement tous les éléments du tableau dans la liste.

Le code suivant le démontre.

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

Production:

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

Convertir une chaîne en ArrayList en Java

Les chaînes sont couramment utilisées à de nombreuses fins différentes, mais elles sont immuables et nous ne pouvons pas leur appliquer de modifications. Une ArrayList, en revanche, offre beaucoup plus de flexibilité. Nous pouvons créer une ArrayList à partir des caractères individuels de la chaîne, ou si nous devons faire quelque chose de plus compliqué (comme créer une ArrayList de noms à partir d’une chaîne séparée par des virgules), nous pouvons utiliser le split() méthode.

Dans l’ensemble, la méthode split() est le moyen le plus simple et le plus préféré de convertir une chaîne en ArrayList.

Article connexe - Java String

Article connexe - Java ArrayList

Article connexe - Java Array