StringTokenizer是一个用来分隔String的应用类,相当于split
1.构造函数
public StringTokenizer(String str)
public StringTokenizer(String str, String delim)
public StringTokenizer(String str, String delim, boolean returnDelims)
第一个参数就是要分隔的String,第二个是分隔字符集合,第三个参数表示分隔符号是否作为标记返回,如果不指定分隔字符,默认的是:”\t\n\r\f”。【java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。】
import java.util.StringTokenizer;
public class TestStringTokenizer {
public static void main(String[] args) {
String s = new String("The Java plat\rform is the ideal platf\form for \t net\twork com\nputing");
StringTokenizer st = new StringTokenizer(s);
System.out.println( "s is: " + s );
System.out.println( "Token Total: " + st.countTokens() );
int i=1;
while( st.hasMoreElements() ){
System.out.println( i +":"+st.nextToken());
i++;
}
}
}
/**第一个\t 和左右两个空格 一起 算一个分隔符
*默认的是:”\t\n\r\f” [\f 是换页]
*
*/
输出结果
form is the ideal platform for net work com
puting
Token Total: 14
1:The
2:Java
3:plat
4:form
5:is
6:the
7:ideal
8:platf
9:orm
10:for
11:net
12:work
13:com
14:puting
2、方法
- int countTokens():返回nextToken方法被调用的次数。如果采用构造函数1和2,返回的就是分隔符数量(例2)。
- boolean hasMoreTokens() :返回是否还有分隔符。
- boolean hasMoreElements() :结果同2。
- String nextToken():返回从当前位置到下一个分隔符的字符串。
- Object nextElement() :结果同4。
- String nextToken(String delim):与4类似,以指定的分隔符返回结果。
public static void main(String[] args) {
String s = new String("The=Java=platform=is=the=ideal=platform=for=network=computing");
StringTokenizer st = new StringTokenizer(s,"=",false); //第三个参数表示分隔符号是否作为标记返回
System.out.println( "Token Total: " + st.countTokens() );
while( st.hasMoreElements() ){
System.out.println( st.nextToken() );
}
}