CodeGym /Blogue Java /Random-PT /StringTokenizer em Java
John Squirrels
Nível 41
San Francisco

StringTokenizer em Java

Publicado no grupo Random-PT
A classe StringTokenizer em Java fornece um método tokenizer String para dividir uma string em tokens com base em um delimitador especificado. A string do tokenizer pode ser qualquer string que separe os tokens, como vírgula, ponto e vírgula ou espaço em branco. Usando o método tokenizer String da classe StringTokenizer , podemos dividir uma string em suas partes constituintes. Chamando o método nextToken() , podemos recuperar cada token por vez e, usando o método hasMoreTokens() , podemos verificar se ainda há mais tokens. O método length() da classe StringTokenizer pode ser usado para obter o comprimento de cada token. StringTokenizer String é uma ferramenta útil para manipulação de strings e pode ser usada para analisar arquivos CSV, URLs ou outros dados baseados em texto. A classe StringTokenizer faz parte do pacote Java.util e fornece uma maneira simples de dividir uma string em tokens. A classe possui dois construtores, um que leva uma string a ser tokenizada e um caractere ou string delimitador, e outro que leva os mesmos argumentos, bem como um sinalizador booleano indicando se deve ou não incluir o delimitador como um token. Depois de criar um objeto StringTokenizer , você pode usar seus vários métodos para iterar pelos tokens e executar diversas operações neles.

Método de tokenização

O método de tokenização é o processo de dividir uma string em partes menores ou tokens. Esse processo é realizado por meio de um delimitador, que pode ser um caractere ou uma sequência de caracteres que separa cada token. Por exemplo, considere a seguinte sequência:
String input = "Hello World! How are you today?";
Se quisermos dividir esta string em palavras individuais, podemos usar o caractere de espaço como delimitador, assim:
StringTokenizer tokenizer = new StringTokenizer(input, " ");
while (tokenizer.hasMoreTokens()) {
    String token = tokenizer.nextToken();
    System.out.println(token);
}

Saída

Olá Mundo! Como você está hoje?
Neste exemplo, criamos um novo objeto StringTokenizer com a string de entrada e um caractere de espaço como delimitador. Em seguida, percorremos os tokens usando o método hasMoreTokens() e recuperamos cada token usando o método nextToken() . Finalmente, imprimimos cada token no console.

Comprimento do token

Além da funcionalidade básica fornecida pelo método nextToken() , a classe StringTokenizer também fornece métodos para recuperar o comprimento de cada token e para recuperar um token específico por índice. Para obter o comprimento do token atual, você pode usar o método token.length() . Por exemplo:
public class StringTokenizerExample {
    public static void main(String[] args) {
        String input = "Hello World! How are you today?";
        StringTokenizer tokenizer = new StringTokenizer(input, " ");
        while (tokenizer.hasMoreTokens()) {
            String token = tokenizer.nextToken();
            System.out.println("Token: " + token + " Length: " + token.length());
        }
    }
}

Saída

Token: Olá Comprimento: 5 Token: Mundo! Comprimento: 6 Token: Como Comprimento: 3 Token: são Comprimento: 3 Token: você Comprimento: 3 Token: hoje? Comprimento: 6
Neste exemplo, recuperamos cada token como antes, mas também usamos o método length() para obter o comprimento de cada token, que então imprimimos no console.

Exemplo

Vamos dar uma olhada em um exemplo completo que demonstra como usar a classe StringTokenizer em Java:
public class Example {
    public static void main(String[] args) {
        String input = "John,Doe,123 Main St.,Anytown,USA";
        StringTokenizer tokenizer = new StringTokenizer(input, ",");
        while (tokenizer.hasMoreTokens()) {
            System.out.println(tokenizer.nextToken());
        }
    }
}

Saída

John Doe 123 Main St. Anytown EUA
Neste exemplo, temos uma string que representa uma lista de valores separados por vírgula. Criamos um novo objeto StringTokenizer com esta string e uma vírgula como delimitador. Em seguida, percorremos os tokens usando o método hasMoreTokens() e recuperamos cada token usando o método nextToken() . Finalmente, imprimimos cada token no console. Observe que não usamos o método length() neste exemplo, pois estamos interessados ​​apenas nos próprios tokens individuais.

Classe StreamTokenizer

Embora a classe StringTokenizer forneça uma maneira simples de dividir uma string em tokens, ela tem algumas limitações. Por exemplo, ele não pode lidar com vários delimitadores ou diferentes tipos de tokens, como números e palavras. Se precisar de recursos de tokenização mais avançados, você pode usar a classe StreamTokenizer . Esta classe oferece mais flexibilidade e pode lidar com vários tipos de entrada. Para reforçar o que você aprendeu, sugerimos que você assista a uma vídeo aula do nosso Curso Java

Conclusão

Neste artigo, exploramos a classe StringTokenizer em Java e vimos como ela pode ser usada para dividir uma string em tokens. Também vimos como usar alguns dos métodos da classe para realizar diversas operações nos tokens, como obter seu comprimento e recuperar tokens específicos por índice. Embora a classe StringTokenizer seja uma ferramenta simples e útil, ela tem suas limitações. Se você precisar de recursos de tokenização mais avançados, considere usar a classe StreamTokenizer ou uma biblioteca mais poderosa, como Apache Commons Lang. Lembre-se de sempre considerar as necessidades específicas do seu projeto ao decidir quais ferramentas e técnicas usar. Com um conhecimento sólido das classes e métodos de manipulação de strings do Java, você pode lidar com facilidade até mesmo com as tarefas mais complexas de manipulação de strings.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION