StringTokenizer的使用
1、构造函数
StringTokenizer(String str);//构造一个解析str的StringTokenizer对象。java默认的分隔符是"空格"、"制表符\t"、"换行符\n"、"回车符\r"。
StringTokenizer(String str,String delim);//构造一个解析str的StringTokenizer对象,并指定分隔符delim。
StringTokenizer(String str,String delim,boolean returnDelim);//构造一个解析str的StringTokenizer对象,并指定分隔符,同时,指定是否返回分隔符。
2、方法
int countTokens();//返回nextToken方法被调用的的次数,如果使用1和2构造函数,就返回的分隔符的数量
boolean hasMoreElements();//返回是否还有分隔符
boolean hasMoreTokens();//同上
String nextToken();//返回从当前位置到下一个分隔符的字符串
Object nextElement();//结果同上,除非生命返回object而不是string
String nextToken(String delim);//同nextToken(),以指定分割返回结果
例1:
StringTokenizer st=new StringTokenizer("www.baidu.com");
System.out.println("Token total:" + st.countTokens());
while(st.hasMoreElements()){
System.out.println(st.nextToken());
}
/*
结果:
Token total:1
www.baidu.com
*/
例2:
StringTokenizer st=new StringTokenizer("www.baidu.com",".",true);
System.out.println("Token total:" + st.countTokens());
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
}
/*
结果:
Token total:5
www
.
baidu
.
com
*/
注意:StringTokenizer的分割符不需要使用转移符
3、StringTokenizer与split的区别
String.Spilt()使用正则表达式,而StringTokenizer使用分隔符进行截取字符串;
如果不适用正则,StringTokenizer截取字符串的效率最高(StringTokenizer不支持正则)