logo

StringTokenizer a Java

  1. StringTokenizer
  2. Mètodes de StringTokenizer
  3. Exemple de StringTokenizer

El java.util.StringTokenizer La classe us permet dividir una cadena en fitxes. És una manera senzilla de trencar una cadena. És una classe heretada de Java.

No ofereix la possibilitat de diferenciar números, cadenes entre cometes, identificadors, etc. com la classe StreamTokenizer. Parlarem sobre la classe StreamTokenizer al capítol d'E/S.

A la classe StringTokenizer, els delimitadors es poden proporcionar en el moment de la creació o un per un als fitxes.

definir ordinador
StringTokenizer a Java

Constructors de la classe StringTokenizer

Hi ha 3 constructors definits a la classe StringTokenizer.

ConstructorDescripció
StringTokenizer (String str)Crea StringTokenizer amb una cadena especificada.
StringTokenizer (String str, String delim)Crea StringTokenizer amb una cadena i un delimitador especificats.
StringTokenizer (String str, String delim, boolean returnValue)Crea StringTokenizer amb una cadena, un delimitador i un valor de retorn especificats. Si el valor de retorn és cert, els caràcters delimitadors es consideren testimonis. Si és fals, els caràcters delimitadors serveixen per separar fitxes.

Mètodes de la classe StringTokenizer

Els sis mètodes útils de la classe StringTokenizer són els següents:

StringTokenizer a Java
MètodesDescripció
booleà hasMoreTokens()Comprova si hi ha més fitxes disponibles.
String nextToken()Retorna el següent testimoni de l'objecte StringTokenizer.
String nextToken(String delim)Retorna el següent testimoni basat en el delimitador.
booleà hasMoreElements()És el mateix que el mètode hasMoreTokens().
Objecte nextElement()És el mateix que nextToken() però el seu tipus de retorn és Object.
int countTokens()Retorna el nombre total de fitxes.

Exemple de classe StringTokenizer

Vegem un exemple de la classe StringTokenizer que tokenitza una cadena 'el meu nom és khan' a partir d'espais en blanc.

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()); } } } 

Sortida:

 my name is khan 

El codi Java anterior demostra l'ús de la classe StringTokenizer i els seus mètodes hasMoreTokens() i nextToken().

Exemple del mètode nextToken(String delim) de la classe 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(',')); } } 

Sortida:

 Next token is : my 

Nota: ara la classe StringTokenizer està obsoleta. Es recomana utilitzar el mètode split() de la classe String o la classe Pattern que pertany al paquet java.util.regex.

Exemple del mètode hasMoreTokens() de la classe StringTokenizer

Aquest mètode retorna true si hi ha més fitxes disponibles a la cadena del tokenizer, en cas contrari retorna 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()); } } } 

Sortida:

any que es va inventar l'ordinador
 Demonstrating methods from StringTokenizer class 

El programa Java anterior mostra l'ús de dos mètodes hasMoreTokens() i nextToken() de la classe StringTokenizer.

Exemple del mètode hasMoreElements() de la classe StringTokenizer

Aquest mètode retorna el mateix valor que el mètode hasMoreTokens() de la classe StringTokenizer. L'única diferència és que aquesta classe pot implementar la interfície d'enumeració.

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()); } } } 

Sortida:

 Hello everyone I am a Java developer 

El codi anterior demostra l'ús del mètode hasMoreElements().

Exemple del mètode nextElement() de la classe StringTokenizer

nextElement() retorna el següent objecte testimoni a la cadena del tokenizer. Pot implementar la interfície d'enumeració.

StringTokenizer3.java

tutorial del llenguatge de programació 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()); } } } 

Sortida:

 Hello Everyone Have a nice day 

El codi anterior demostra l'ús del mètode nextElement().

Exemple del mètode countTokens() de la classe StringTokenizer

Aquest mètode calcula el nombre de fitxes presents a la cadena del tokenizer.

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()); } } 

Sortida:

 Total number of Tokens: 6 

El codi Java anterior mostra el mètode countTokens() de la classe StringTokenizer().