The java.util.StringTokenizer klasa vam omogućuje rastavljanje niza u tokene. To je jednostavan način za prekid niza. To je naslijeđena klasa Jave.
Ne pruža mogućnost razlikovanja brojeva, znakovnih znakova, identifikatora itd. poput klase StreamTokenizer. Razgovarat ćemo o klasi StreamTokenizer u I/O poglavlju.
U klasi StringTokenizer, graničnici se mogu dati u trenutku stvaranja ili jedan po jedan za tokene.
Konstruktori klase StringTokenizer
U klasi StringTokenizer definirana su 3 konstruktora.
python popis inicijalizirati
Konstruktor | Opis |
---|---|
StringTokenizer(String str) | Stvara StringTokenizer s navedenim nizom. |
StringTokenizer(String str, String delim) | Stvara StringTokenizer s navedenim nizom i razdjelnikom. |
StringTokenizer(String str, String delim, boolean returnValue) | Stvara StringTokenizer s navedenim nizom, razdjelnikom i returnValue. Ako je vraćena vrijednost istinita, znakovi za razdvajanje smatraju se tokenima. Ako je false, znakovi za razdvajanje služe za odvajanje tokena. |
Metode klase StringTokenizer
Šest korisnih metoda klase StringTokenizer su sljedeće:
Metode | Opis |
---|---|
Boolean hasMoreTokens() | Provjerava ima li još dostupnih tokena. |
String nextToken() | Vraća sljedeći token iz objekta StringTokenizer. |
String nextToken(String delim) | Vraća sljedeći token na temelju graničnika. |
Boolean hasMoreElements() | To je isto kao metoda hasMoreTokens(). |
Objekt nextElement() | Isti je kao nextToken(), ali je njegov povratni tip Object. |
int countTokens() | Vraća ukupan broj tokena. |
Primjer klase StringTokenizer
Pogledajmo primjer klase StringTokenizer koja tokenizira niz 'moje ime je khan' na temelju razmaka.
Jednostavno.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()); } } }
Izlaz:
my name is khan
Gornji Java kod demonstrira upotrebu klase StringTokenizer i njenih metoda hasMoreTokens() i nextToken().
Primjer metode nextToken(String delim) klase 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(',')); } }
Izlaz:
Next token is : my
Napomena: klasa StringTokenizer sada je zastarjela. Preporuča se korištenje metode split() klase String ili klase Pattern koja pripada paketu java.util.regex.
Primjer metode hasMoreTokens() klase StringTokenizer
Ova metoda vraća true ako je više tokena dostupno u nizu tokenizera, inače vraća false.
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()); } } }
Izlaz:
Demonstrating methods from StringTokenizer class
Gornji Java program pokazuje korištenje dvije metode hasMoreTokens() i nextToken() klase StringTokenizer.
uklonite npm predmemoriju
Primjer metode hasMoreElements() klase StringTokenizer
Ova metoda vraća istu vrijednost kao metoda hasMoreTokens() klase StringTokenizer. Jedina razlika je što ova klasa može implementirati sučelje Enumeration.
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()); } } }
Izlaz:
Hello everyone I am a Java developer
Gornji kôd demonstrira korištenje metode hasMoreElements().
Primjer metode nextElement() klase StringTokenizer
nextElement() vraća sljedeći token objekt u tokenizer String. Može implementirati sučelje Enumeration.
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()); } } }
Izlaz:
veličine lateks slova
Hello Everyone Have a nice day
Gornji kôd demonstrira upotrebu metode nextElement().
Primjer metode countTokens() klase StringTokenizer
Ova metoda izračunava broj tokena prisutnih u nizu tokenizatora.
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()); } }
Izlaz:
Total number of Tokens: 6
Gornji Java kod demonstrira metodu countTokens() klase StringTokenizer().