Java中substring方法可以分解字符串,返回的是原字符串的一个子字符串。如果要讲一个字符串分解为一个一个的单词或者标记,StringTokenizer可以帮你。

     public static void main(String[] args) {
StringTokenizer st = new StringTokenizer("www.baidu.com", ".b");
while(st.hasMoreElements()){
System.out.println("Token:" + st.nextToken());
}
}

输出:
Token:www
Token:baidu
Token:com

StringTokenizer有两个常用的方法:

1.hasMoreTokens()。这个方法和hasMoreElements()方法的用法是一样的,只是StringTokenizer为了实现Enumeration接口而实现的方法,从StringTokenizer的声明可以看到:class StringTokenizer implements Enumeration<Object>。

2.nextToken()。这个方法和nextElement()方法的用法是一样的,返回此 StringTokenizer 的下一个标记。

StringTokenizer的三个构造方法:

1.StringTokenizer(String str)。默认以” \t\n\r\f”(前有一个空格,引号不是)为分割符。
源码:

/**
* Constructs a string tokenizer for the specified string. The
* tokenizer uses the default delimiter set, which is
* <code>"&nbsp;\t\n\r\f"</code>: the space character,
* the tab character, the newline character, the carriage-return character,
* and the form-feed character. Delimiter characters themselves will
* not be treated as tokens.
*
* @param str a string to be parsed.
* @exception NullPointerException if str is <CODE>null</CODE>
*/
public StringTokenizer(String str) {
this(str, " \t\n\r\f", false);

  public static void main(String[] args) {  

     StringTokenizer st = new StringTokenizer("www baidu com");
while(st.hasMoreElements()){
System.out.println("Token:" + st.nextToken());
}
}

  输出:Token:www

Token:baidu

Token:com

public static void main(String[] args) {  

  StringTokenizer st = new StringTokenizer("www.baidu.com", ".", true);  

  while(st.hasMoreElements()){  

  System.out.println("Token:" + st.nextToken());  

  }  

  }

输出:Token:wwwToken:.Token:baiduToken:.Token:com

最新文章

  1. SQL Server监控报警架构_如何添加报警
  2. 对jQuery选择器的总结
  3. MySQL热备脚本
  4. strtr对用户输入的敏感词汇进行过滤
  5. silverlight 双击事件
  6. 【转】eclipse android 设置及修改生成apk的签名文件 -- custom debug keystore
  7. js call方法介绍
  8. tar命令,重定向,正则表达式,添加删除用户,tr命令,sort排序
  9. [ mysql优化一 ] explain解释select语句
  10. 安装Hadoop及Spark(Ubuntu 16.04)
  11. 区分IE8 、IE9 、IE10的专属css hack
  12. Anaconda安装Package的问题(Permission Denied)
  13. k8s 1.9 安装
  14. UVa140 Bandwidth 【最优性剪枝】
  15. Python open 对应的参数
  16. IOS系统中,Web应用程序的cookie读写
  17. AQS源码分析
  18. 为 GlusterFS 设计新的xlator (编译及调用过程分析)
  19. 在命令行上 Ubuntu 下使用 mutt 和 msmtp 发送 Gmail 邮件
  20. selenium webdriver API详解(一)

热门文章

  1. 【总结整理】天地图WMTS服务与卫星图匹配与坐标转换
  2. mongoDB的学习
  3. 解决ftp无法连接登录linux的办法
  4. 547D Mike and Fish
  5. python3-字典中存储列表
  6. Android中常见的内存泄漏
  7. [转]CentOS 7.3 安装MySQL
  8. 搭建邮件服务器 Postfix + Dovecot (CentOS)
  9. 字符串创建XML文档
  10. UWP&amp;WP8.1 基础控件—Button