String-Tokenizer
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 48 von 59.
StringTokenizer wird verwendet, um eine Zeichenkette in Token (kleinere Teile) basierend auf einem Trennzeichen zu zerlegen. Standardmäßig verwendet es Leerzeichen als Trennzeichen.
Erstellen Sie einen StringTokenizer mit Standard-Delimiter (Leerzeichen):
StringTokenizer st = new StringTokenizer("Hello World Java");Token zählen und abrufen:
int count = st.countTokens();
// Ermittelt die Anzahl der Token
String first = st.nextToken();
// Ermittelt das nächste TokenNach der Ausführung des obigen Codes enthalten die Variablen:
count: 3
first: "Hello"Wenn Sie nextToken() aufrufen, entfernt es dieses Token aus dem Tokenizer. Die countTokens()-Methode gibt die Anzahl der verbleibenden Tokens zurück.
StringTokenizer st = new StringTokenizer("Hello World Java");
System.out.println(st.countTokens()); // Gibt aus: 3
st.nextToken(); // Verbraucht "Hello"
System.out.println(st.countTokens()); // Gibt aus: 2 (nicht 3!)
st.nextToken(); // Verbraucht "World"
System.out.println(st.countTokens()); // Gibt aus: 1Tipp: Wenn Sie die Gesamtzahl der Token wissen möchten, rufen Sie countTokens() auf, bevor Sie Token verbrauchen. Verwenden Sie hasMoreTokens(), um zu überprüfen, ob während der Iteration weitere Token verfügbar sind.
Aufgabe
EinfachErstellen Sie eine Methode namens tokenizeText, die zwei Argumente annimmt:
- Ein String (
text) zum Tokenisieren - Ein String (
delimiter) zum Splitten
Die Methode sollte:
- Einen StringTokenizer mit dem gegebenen Text und Trennzeichen erstellen
- Einen String zurückgeben, der die Token-Anzahl gefolgt von jedem Token in einer neuen Zeile enthält
Die Rückgabemeldungen sollten sein:
- Wenn text null ist: geben Sie "Invalid text" zurück
- Wenn delimiter null ist: verwenden Sie Leerzeichen als Trennzeichen
- Format: "Token count: X\nToken: token1\nToken: token2\n..."
Spickzettel
StringTokenizer zerlegt einen String in Tokens (kleinere Teile) basierend auf einem Delimiter. Standardmäßig verwendet es Leerzeichen als Delimiter.
Erstellen Sie einen StringTokenizer mit Standard-Delimiter (Leerzeichen):
StringTokenizer st = new StringTokenizer("Hello World Java");Tokens zählen und abrufen:
int count = st.countTokens(); // Ermittelt die Anzahl der Tokens
String first = st.nextToken(); // Ermittelt den nächsten TokenStringTokenizer mit benutzerdefiniertem Delimiter erstellen:
StringTokenizer st = new StringTokenizer(text, delimiter);Wenn Sie nextToken() aufrufen, entfernt es diesen Token aus dem Tokenizer. Die Methode countTokens() gibt die Anzahl der verbleibenden Tokens zurück.
StringTokenizer st = new StringTokenizer("Hello World Java");
System.out.println(st.countTokens()); // Gibt aus: 3
st.nextToken(); // Verbraucht "Hello"
System.out.println(st.countTokens()); // Gibt aus: 2 (nicht 3!)
st.nextToken(); // Verbraucht "World"
System.out.println(st.countTokens()); // Gibt aus: 1Tipp: Wenn Sie die Gesamtzahl der Tokens wissen möchten, rufen Sie countTokens() auf, bevor Sie Tokens verbrauchen. Verwenden Sie hasMoreTokens(), um zu überprüfen, ob weitere Tokens verfügbar sind, während Sie iterieren.
Probier es selbst
import java.util.Scanner;
import java.util.StringTokenizer;
public class Main {
public static String tokenizeText(String text, String delimiter) {
// Schreibe deinen Code hier
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String text = scanner.nextLine();
String delimiter = scanner.nextLine();
if (text.equals("null")) text = null;
if (delimiter.equals("null")) delimiter = null;
System.out.println(tokenizeText(text, delimiter));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap5HashSet Teil 2
Mathematik - Vereinigung von HashSetsMathematik - Schnittmenge von HashSetsMathematik - Mengen-DifferenzMathematik - Symmetrische DifferenzUnter- und ObermengenIterieren über Mengen8Fortgeschrittene String-Operationen
StringBuilder-GrundlagenStringBuffer-EinführungGrundlagen regulärer AusdrückeMusterabgleich mit RegexString-TokenizerFortgeschrittene String-Formatierung3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitung