Der java.util.StringTokenizer Mit der Klasse können Sie einen String in Token aufteilen. Es ist eine einfache Möglichkeit, einen String zu unterbrechen. Es ist eine Legacy-Klasse von Java.
Es bietet nicht die Möglichkeit, Zahlen, Zeichenfolgen in Anführungszeichen, Bezeichner usw. wie die StreamTokenizer-Klasse zu unterscheiden. Wir werden die StreamTokenizer-Klasse im I/O-Kapitel besprechen.
In der StringTokenizer-Klasse können die Trennzeichen zum Zeitpunkt der Erstellung oder einzeln für die Token bereitgestellt werden.
Konstruktoren der StringTokenizer-Klasse
In der StringTokenizer-Klasse sind drei Konstruktoren definiert.
Konstrukteur | Beschreibung |
---|---|
StringTokenizer(String str) | Es erstellt StringTokenizer mit der angegebenen Zeichenfolge. |
StringTokenizer(String str, String delim) | Es erstellt einen StringTokenizer mit der angegebenen Zeichenfolge und dem angegebenen Trennzeichen. |
StringTokenizer(String str, String delim, boolean returnValue) | Es erstellt einen StringTokenizer mit der angegebenen Zeichenfolge, dem angegebenen Trennzeichen und dem angegebenen Rückgabewert. Wenn der Rückgabewert wahr ist, werden Trennzeichen als Token betrachtet. Wenn es falsch ist, dienen Trennzeichen zur Trennung von Token. |
Methoden der StringTokenizer-Klasse
Die sechs nützlichen Methoden der StringTokenizer-Klasse sind wie folgt:
Methoden | Beschreibung |
---|---|
boolean hasMoreTokens() | Es prüft, ob weitere Token verfügbar sind. |
String nextToken() | Es gibt das nächste Token vom StringTokenizer-Objekt zurück. |
String nextToken(String delim) | Es gibt das nächste Token basierend auf dem Trennzeichen zurück. |
boolean hasMoreElements() | Es ist dasselbe wie die Methode hasMoreTokens(). |
Objekt nextElement() | Es ist dasselbe wie nextToken(), aber sein Rückgabetyp ist Object. |
int countTokens() | Es gibt die Gesamtzahl der Token zurück. |
Beispiel einer StringTokenizer-Klasse
Sehen wir uns ein Beispiel der StringTokenizer-Klasse an, die eine Zeichenfolge „Mein Name ist Khan“ auf der Grundlage von Leerzeichen tokenisiert.
Simple.java
import java.util.StringTokenizer; public class Simple{ public static void main(String args[]){ StringTokenizer st = new StringTokenizer('my name is khan',' '); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } }
Ausgabe:
my name is khan
Der obige Java-Code demonstriert die Verwendung der StringTokenizer-Klasse und ihrer Methoden hasMoreTokens() und nextToken().
Beispiel für die Methode nextToken(String delim) der Klasse StringTokenizer
Test.java
import java.util.*; public class Test { public static void main(String[] args) { StringTokenizer st = new StringTokenizer('my,name,is,khan'); // printing next token System.out.println('Next token is : ' + st.nextToken(',')); } }
Ausgabe:
Next token is : my
Hinweis: Die StringTokenizer-Klasse ist jetzt veraltet. Es wird empfohlen, die Methode split() der String-Klasse oder der Pattern-Klasse zu verwenden, die zum Paket java.util.regex gehört.
Beispiel für die Methode hasMoreTokens() der Klasse StringTokenizer
Diese Methode gibt „true“ zurück, wenn mehr Token im Tokenizer-String verfügbar sind, andernfalls wird „false“ zurückgegeben.
StringTokenizer1.java
import java.util.StringTokenizer; public class StringTokenizer1 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Demonstrating methods from StringTokenizer class',' '); /* Checks if the String has any more tokens */ while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } }
Ausgabe:
Demonstrating methods from StringTokenizer class
Das obige Java-Programm zeigt die Verwendung der beiden Methoden hasMoreTokens() und nextToken() der StringTokenizer-Klasse.
Beispiel für die Methode hasMoreElements() der Klasse StringTokenizer
Diese Methode gibt denselben Wert zurück wie die Methode hasMoreTokens() der Klasse StringTokenizer. Der einzige Unterschied besteht darin, dass diese Klasse die Enumeration-Schnittstelle implementieren kann.
StringTokenizer2.java
import java.util.StringTokenizer; public class StringTokenizer2 { public static void main(String args[]) { StringTokenizer st = new StringTokenizer('Hello everyone I am a Java developer',' '); while (st.hasMoreElements()) { System.out.println(st.nextToken()); } } }
Ausgabe:
Hello everyone I am a Java developer
Der obige Code demonstriert die Verwendung der Methode hasMoreElements().
32-Bit-Architektur vs. 64-Bit
Beispiel der nextElement()-Methode der StringTokenizer-Klasse
nextElement() gibt das nächste Token-Objekt im Tokenizer-String zurück. Es kann die Enumeration-Schnittstelle implementieren.
StringTokenizer3.java
import java.util.StringTokenizer; public class StringTokenizer3 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Hello Everyone Have a nice day',' '); /* Checks if the String has any more tokens */ while (st.hasMoreTokens()) { /* Prints the elements from the String */ System.out.println(st.nextElement()); } } }
Ausgabe:
Hello Everyone Have a nice day
Der obige Code demonstriert die Verwendung der nextElement()-Methode.
Beispiel der countTokens()-Methode der StringTokenizer-Klasse
Diese Methode berechnet die Anzahl der im Tokenizer-String vorhandenen Token.
StringTokenizer4.java
import java.util.StringTokenizer; public class StringTokenizer3 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Hello Everyone Have a nice day',' '); /* Prints the number of tokens present in the String */ System.out.println('Total number of Tokens: '+st.countTokens()); } }
Ausgabe:
Total number of Tokens: 6
Der obige Java-Code demonstriert die countTokens()-Methode der StringTokenizer()-Klasse.