Contenu du cours
Java Avancé
Java Avancé
Méthode Split()
String[] split(String delimiter)
La méthode split(String delimiter)
divise une chaîne de caractères en un tableau de sous-chaînes selon le délimiteur spécifié (un caractère ou une séquence de caractères). Elle retourne un tableau où chaque élément est une sous-chaîne issue de la chaîne d'origine, séparée par le délimiteur.
Comment diviser une chaîne en String[]
Supposons que l'on souhaite diviser une phrase en un tableau de mots. Dans ce cas, on peut soit append
jusqu'à rencontrer un espace (" "
), soit utiliser la méthode split()
.
La méthode split()
est une méthode de la classe String
qui prend un regex
en paramètre. Qu'est-ce qu'un regex
? Regex
signifie expression régulière, c'est-à-dire un caractère ou un ensemble de caractères que l'on utilise pour diviser la chaîne. On peut saisir un espace " "
dans le regex, et ainsi, la phrase sera découpée en mots.
Voyons un exemple :
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String string = "This is the sentence that we want to split"; // split the string into an array based on spaces String[] array = string.split(" "); printArray(array); } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.println(element + " "); } } }
Ici, nous avons divisé la chaîne en un tableau de mots. Nous avons utilisé " "
pour indiquer au programme qu'il doit séparer la phrase à chaque occurrence de " "
.
Comment diviser une chaîne par un caractère spécifique
Nous pouvons également diviser notre chaîne en utilisant n'importe quel autre caractère. Par exemple, divisons le lien à chaque occurrence du caractère "/"
.
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String link = "codefinity.com/profile/my-home"; // split the string into an array based on "/" String[] array = link.split("/"); printArray(array); // print the array elements } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.println(element + " "); } } }
Nous avons divisé l’URL en parties distinctes à chaque occurrence du caractère "/"
, et nous pouvons maintenant voir chaque élément de l’URL. En d’autres termes, lorsque nous divisons la chaîne au niveau du caractère "/"
, nous obtenons un tableau de chaînes de caractères.
Vous pouvez également remarquer que la méthode supprime le caractère spécifié du tableau résultant lors de la division.
Comment diviser une chaîne en caractères de type String
Pour diviser une chaîne en un tableau à chaque occurrence d’un caractère unique, il suffit d’utiliser des guillemets vides ""
comme paramètre. Examinons un exemple :
Main.java
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String string = "c<>definity"; // split the string into an array of individual characters String[] array = string.split(""); printArray(array); } // method to print each element of the array static void printArray(String[] array) { for (String element: array) { System.out.print(element + " "); } // print a new line after the array elements System.out.println(); } }
Nous avons divisé la chaîne en lettres individuelles. Vous pourriez penser qu’il existe une méthode spécifique pour cela, comme toCharArray()
, mais la différence est que lorsque l’on utilise la méthode split()
, on obtient un tableau d’éléments de type String
, tandis qu’avec toCharArray()
, on obtient directement un tableau d’éléments de type char
.
Merci pour vos commentaires !