Kursinhalt
Java Erweitert
Java Erweitert
Methode Split()
String[] split(String delimiter)
Die Methode split(String delimiter)
teilt einen String anhand des angegebenen Trennzeichens (ein Zeichen oder eine Zeichenfolge) in ein Array von Teilstrings auf. Sie gibt ein Array zurück, in dem jedes Element ein Teilstring aus dem ursprünglichen String ist, getrennt durch das Trennzeichen.
Aufteilen eines Strings in ein String[]
Angenommen, wir haben die Aufgabe, einen Satz in ein Array von Wörtern zu zerlegen. In diesem Fall können wir entweder append
verwenden, bis wir auf ein Leerzeichen (" "
) stoßen, oder wir nutzen die split()
-Methode.
Die split()
-Methode ist eine Methode der Klasse String
, die einen regex
-Parameter erwartet. Was ist regex
? Regex
steht für regulärer Ausdruck und bezeichnet ein Zeichen oder eine Zeichenfolge, mit der wir unseren String aufteilen. Wir können ein Leerzeichen " "
als Regex angeben, wodurch der Satz in Wörter unterteilt wird.
Schauen wir uns ein Beispiel an:
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 + " "); } } }
Hier haben wir den String in ein Array von Wörtern aufgeteilt. Wir haben " "
verwendet, um dem Programm anzugeben, dass es den Satz bei jedem Vorkommen von " "
trennen soll.
Wie man einen String anhand eines bestimmten Zeichens aufteilt
Wir können unseren String auch mit jedem anderen Zeichen aufteilen. Zum Beispiel teilen wir den Link beim Vorkommen des Zeichens "/"
.
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 + " "); } } }
Wir haben die URL an jeder Stelle des Zeichens "/"
in einzelne Teile aufgeteilt und können nun jedes Element der URL sehen. Anders ausgedrückt: Wenn wir den String am Zeichen "/"
aufteilen, erhalten wir ein Array von Strings.
Es fällt außerdem auf, dass die Methode das angegebene Zeichen beim Aufteilen aus dem resultierenden Array entfernt.
Wie man einen String in Zeichen mit dem Typ String aufteilt
Um einen String bei jedem Vorkommen eines einzelnen Zeichens in ein Array aufzuteilen, können wir einfach leere Anführungszeichen ""
als Parameter verwenden. Sehen wir uns ein Beispiel an:
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(); } }
Wir haben den String in einzelne Buchstaben aufgeteilt. Möglicherweise denken Sie, dass es dafür eine spezielle Methode wie toCharArray()
gibt, aber der Unterschied besteht darin, dass wir mit der Methode split()
ein Array von Elementen des Typs String
erhalten, während wir mit toCharArray()
direkt ein Array von Elementen des Typs char
bekommen.
Danke für Ihr Feedback!