StringTokenizer类:
根据自定义字符为分界符进行拆分,并将结果进行封装提供对应方法进行遍历取值
StringTokenizer方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释;该方法用途类似于split方法,只是对结果进行了封装;
帮助文档上对此进行了说明:
StringTokenizer 是出于兼容性的原因而被保留的遗留类(在新代码中并不鼓励使用它)。
可使用 String 的 split 方法或 java.util.regex 包替代。
构造器:
· public StringTokenizer(String str,String delim,boolean returnTokens);
· public StringTokenizer(String str,String delim);
· public StringTokenizer(String str);
StringTokenizer(String str):
构造一个用来解析str的StringTokenizer对象。java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。
StringTokenizer(String str,String delim):
构造一个用来解析str的StringTokenizer对象,并提供一个指定的分隔符。
public StringTokenizer(String str,String delim,boolean returnTokens):
构造一个用来解析str的StringTokenizer对象,并提供一个指定的分隔符,同时,指定是否返回分隔符。
其中,str为需分析的字符串,delim为定界符,定界符里面的任何一个字符都是分隔符,如"+-*/ "表示碰到"+-*/ "中的任何一个都认为是到达了分隔符了。
常用的方法有:
· public boolean hasMoreTokens(); //判断字符串中是含还有token
· public String nextToken(); //StringTokenizer对象中的下一个token。
· public String nextToken(String delim) //delim为新的定界符
public boolean hasMoreElements ()
在例中,使用StringTokenizer类将字符串“aa,bb,cc,dd,ff”分解为三个单词。
【例】
impoort java.util.*;
public class StringTokenizer Demo
{
public static void main(String[] args)
{
String str=" hello,java,delphi,asp,php";
StringTokenizer st=new StringTokenizer(str,",");
while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
程序的运行结果为:
aa
bb
cc
dd
ff