StringTokenizer类
StringTokenizer 属于 java.util 包,用来按分隔符把字符串拆成一个个 token。
注意:它是比较旧的分词工具。现代代码中更常用
String.split()或正则,但教材里经常会讲。
基本用法
import java.util.StringTokenizer;
String text = "Java is useful";
StringTokenizer st = new StringTokenizer(text);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}默认按空格、制表符、换行等空白字符分割。
指定分隔符
String text = "apple,banana,orange";
StringTokenizer st = new StringTokenizer(text, ",");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}输出:
apple
banana
orange常用方法
| 方法 | 作用 |
|---|---|
hasMoreTokens() | 判断是否还有下一个 token |
nextToken() | 取出下一个 token |
countTokens() | 返回剩余 token 数量 |
和 split() 的区别
| 对比 | StringTokenizer | split() |
|---|---|---|
| 所属 | java.util | String 方法 |
| 分隔规则 | 普通分隔符 | 正则表达式 |
| 返回结果 | 逐个取 token | 返回 String[] |
| 使用场景 | 教材基础分词 | 实际开发更常用 |
String[] parts = "apple,banana,orange".split(",");易错点
- 类名是
StringTokenizer,不是StringOTokenizer。 - 使用前要
import java.util.StringTokenizer;。 - 分隔符不是正则表达式;如果需要复杂规则,用正则表示式或
split()。