StringTokenizer用于按分隔符拆分字符串,默认以空白字符分割,支持自定义分隔符和返回分隔符本身,通过hasMoreTokens()和nextToken()遍历结果,但不可重置且已标记为过时,推荐新项目使用split()。

Java的StringTokenizer类可以用来将字符串按照指定的分隔符拆分成多个部分。它位于java.util包中,使用起来比较简单直观。虽然现在推荐使用String.split()或正则表达式方式处理更复杂的分割需求,但了解StringTokenizer仍有实际意义,尤其是在处理简单分隔场景时。
创建StringTokenizer对象
要使用StringTokenizer,先需要导入java.util.StringTokenizer,然后通过构造函数创建实例。默认情况下,它会以空格、制表符、换行符等空白字符作为分隔符。
String str = “apple,banana,orange”;
StringTokenizer tokenizer = new StringTokenizer(str, “,”);
上面代码中,第二个参数”,”表示使用逗号作为分隔符。如果不传分隔符,默认按空白字符分割。
遍历并获取分割结果
可以通过hasMoreTokens()判断是否还有未读取的标记,用nextToken()获取下一个标记。
立即学习“Java免费学习笔记(深入)”;
SpeakingPass-打造你的专属雅思口语语料
使用chatGPT帮你快速备考雅思口语,提升分数
25 查看详情
while (tokenizer.hasMoreTokens()) {
System.out.println(tokenizer.nextToken());
}
这段代码会依次输出apple、banana和orange。每调用一次nextToken(),就返回一个分割后的子串,并移动内部指针。
是否保留分隔符
StringTokenizer有一个可选的第三个参数:boolean returnDelimiters。如果设为true,分隔符本身也会作为token返回。
String str = “a,b,c”;
StringTokenizer tokenizer = new StringTokenizer(str, “,”, true);
while (tokenizer.hasMoreTokens()) {
System.out.print(tokenizer.nextToken() + ” “);
}
// 输出:a , b , c
这种方式在需要分析原始结构时可能有用,但大多数情况下设为false即可。
基本上就这些。StringTokenizer适合简单的字符串分割任务,不需要正则表达式的复杂逻辑。注意它已经被标记为“过时”(legacy),对于新项目建议优先考虑split()方法,但在维护旧代码或教学中仍会遇到。不复杂但容易忽略的是它的不可重置性——一旦开始遍历,就不能重新开始,除非新建对象。
以上就是如何使用Java的StringTokenizer分割字符串的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/305176.html
微信扫一扫
支付宝扫一扫