java利用StringTokenizer分割字符串

介绍

利用java.util.StringTokenizer的方法,可以将一个字符串拆分为一系列的标记(token)。StringTokenizer是为了兼容性原因而保留的遗留类。在新的代码中,不建议使用StringTokenizer,而建议使用String类的split方法来完成拆分的功能。

举例

利用默认分割字符集分割

用StringTokenizer(String str)形式的构造函数构造一个StringTokenizer,利用了默认的分割字符集" \t\n\r\f",分别是:空白字符、tab字符、新行字符、回车字符、换页符(form-feed character)。分割符本身不作为标记。

package com.thb;

import java.util.StringTokenizer;

public class Demo2 {

    public static void main(String[] args) {
        StringTokenizer tokenizer = new StringTokenizer("That is very nice");
        while (tokenizer.hasMoreElements()) {
            System.out.println(tokenizer.nextElement());
        }
    }

}

运行输出:

That
is
very
nice

上面的功能用String的split函数实现:

package com.thb;

public class Demo3 {

    public static void main(String[] args) {
        String[] result = "That is very nice".split("\\s");
        for (int i = 0; i < result.length; i++) {
            System.out.println(result[i]);
        }
    }
}

运行输出:

That
is
very
nice

利用指定分割字符集分割

用StringTokenizer(String str, String delim)形式的构造函数构造一个StringTokenizer,指定了分割字符集delim,分割符本身不作为标记。

package com.thb;

import java.util.StringTokenizer;

public class Demo2 {

    public static void main(String[] args) {
        String str = "num1=10&num2=20";
        StringTokenizer tokenizer = new StringTokenizer(str, "=&/");
        while (tokenizer.hasMoreElements()) {
            System.out.println(tokenizer.nextToken());
        }
    }

}

运行输出:

num1
10
num2
20

你可能感兴趣的:(java,开发语言)