En PC Resumen vamos a hablar de la Clase StringTokenizer en el lenguaje de programación en Java. Cuando nosotros leemos una frase, nuestra mente la divide en tokens (palabras individuales y signos de puntuación, cada uno de los cuales nos da un significado). Los compiladores también llevan a cabo la descomposición de instrucciones en piezas individuales tales como palabras clave, identificadores, operadores, etc.
Aquí veremos la clase StringTokenizer, lo descompone una cadena en los tokens que la componen. Este se separan mediante delimitadores, que generalmente son caracteres de espacio en blanco, tabuladores, retorno de carro... También pueden utilizarse otros caracteres como delimitadores para separar tokens. El programa siguiente muestra el uso de esta clase:
import java.util.Scanner;
import java.util.StringTokenizer;
public class PruebaToken {
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
System.out.println("Escribe un enunciado y presione Intro");
String enunciado = scanner.nextLine();
StringTokenizer tokens = new StringTokenizer(enunciado);
System.out.printf("Número de elementos: %d\nLos tokens son:\n",
tokens.countTokens());
while (tokens.hasMoreTokens()) {
System.out.println(tokens.nextToken());
}
}
}
Cuando el usuario pulsa Intro el enunciado de entrada se almacena en la variable. el constructor StringTokenizer recibe un argumento de cada cadena y crea un objeto para esta cadena, utilizando la cadena delimitadora predeterminada "\t \n \r \f" que consiste en un espacio, un tabulador, un retorno de carro y una nueva línea, para la descomposición en tokens. Hay otros dos constructores. En la versión que recibe dos argumentos String, el segundo es la cadena delimitadora. En la versión de tres argumentos, el tercero (booleano) determina si los delimitadores también se devuelven como tokens.