Java StringTokenizer类

Java StringTokenizer类

Java中的 StringTokenizer类 用于将一个字符串分解成标记。一个StringTokenizer对象在内部保持了一个要被标记的字符串的当前位置。一些操作将这个当前位置推进到所处理的字符之后。通过提取用于创建StringTokenizer对象的字符串的一个子串来返回一个标记。它提供了解析过程中的第1步,通常被称为lexer或scanner。String Tokenizer类允许应用程序将字符串分解成标记。它实现了Enumeration接口。这个类用于解析数据。为了使用String Tokenizer类,我们必须指定一个输入字符串和一个包含定界符的字符串。定界符是分隔代币的字符。定界符字符串中的每个字符都被认为是有效的定界符。默认的定界符是空白处、换行、空格和制表符。

示例:

Java中的StringTokenizer类

StringToken的构造函数: 让我们考虑将 “str “作为要被标记的字符串。

  1. StringTokenizer(String str): 默认的分隔符是换行符、空格、制表符、回车符和换页符。
  2. StringTokenizer(String str, String delim): delim是一组用来标记给定字符串的分隔符。
  3. StringTokenizer(String str, String delim, boolean flag): 前两个参数有相同的含义,其中标志有以下作用。

3.1: 如果该标志是假的,定界符用于分隔标记符

例子

Input : if string –> “hello geeks” and Delimiter is ” “, then
Output: tokens are “hello” and “geeks”.

3.2: 如果该标志为真,定界符被认为是标记。

例子

Input : String –> is “hello geeks”and Delimiter is ” “, then
Output: Tokens –> “hello”, ” ” and “geeks”.

3.3: 一个字符串可以选择多个定界符。

例子

语法:
StringTokenizer st1 = new StringTokenizer( “2+3-18/4″, “+-/”);
Input : String –> is “2+3-18/4″ and Delimiters are +,,-,/
Output: Tokens –> “2”,”3″,”1″,”8″,”4″.

字符串标记器类的方法

方法 执行的操作
countTokens() 返回所存在的标记的总数
hasMoreToken() 测试StringTokenizer的字符串是否有令牌存在。
nextElement() 返回一个对象而不是字符串
hasMoreElements() 返回与hasMoreToken相同的值
nextToken() 从给定的StringTokenizer中返回下一个token。

实现

// Java Program to Illustrate StringTokenizer Class
 
// Importing required classes
import java.util.*;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String args[])
    {
 
        // Constructor 1
        System.out.println("Using Constructor 1 - ");
 
        // Creating object of class inside main() method
        StringTokenizer st1 = new StringTokenizer(
            "Hello Geeks How are you", " ");
 
        // Condition holds true till there is single token
        // remaining using hasMoreTokens() method
        while (st1.hasMoreTokens())
 
            // Getting next tokens
            System.out.println(st1.nextToken());
 
        // Constructor 2
        System.out.println("Using Constructor 2 - ");
 
        // Again creating object of class inside main()
        // method
        StringTokenizer st2 = new StringTokenizer(
            "JAVA : Code : String", " :");
 
        // If tokens are present
        while (st2.hasMoreTokens())
 
            // Print all tokens
            System.out.println(st2.nextToken());
 
        // Constructor 3
        System.out.println("Using Constructor 3 - ");
 
        // Again creating object of class inside main()
        // method
        StringTokenizer st3 = new StringTokenizer(
            "JAVA : Code : String", " :", true);
 
        while (st3.hasMoreTokens())
            System.out.println(st3.nextToken());
    }
}

输出

Using Constructor 1 - 
Hello
Geeks
How
are
you
Using Constructor 2 - 
JAVA
Code
String
Using Constructor 3 - 
JAVA

:

Code

:

String

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程