StringTokenizer类详解
StringTokenizer类是一个用来对String进行分词编辑的应用类,类似于Java String 类中的split函数.
构造函数
StringTokenizer提供了三个构造参数
public StringTokenizer(String str)
public StringTokenizer(String str, String delim)
public StringTokenizer(String str, String delim, boolean returnDelims)
其中,前两个构造函数直接调用第三个构造函数创建一个StringTokenizer实例.参数str代表要分割的字符串,delim为一个分割标识符集合,returnDelims表示是否返回分割标识符.在没有指定分割标识符的情况下,默认是"\t\n\r\f".
常用方法
首先,先理解本类中Token的概念.StringTokenizer类的作用就是对给定的字符串进行分割,而分割后的元素就是Token.比如"This is a java programmer!“这个字符串按照空格来分割,那个分割后就是"This”,“is”,“a”,“java”,"programmer!"五个字符串,也就是5个Token.
现在来看一下常用的方法
public boolean hasMoreTokens()//是否还有Token
public String nextToken()//下一个Token
public String nextToken(String delim)//根据分隔符获取下一个Token
public int countTokens()//Token的总个数
代码示例
demo1
本例演示了使用默认分隔符对字符串进行分割以及分割后的处理
String content = "Both sides reached consensus on market access and the text of free trade agreement, " +"making a substantive progress and a basic completion of the FTA negotiation.";
StringTokenizer st = new StringTokenizer(content);
System.out.println("分割后Token的个数-->"+st.countTokens());
int i=1;
while(st.hasMoreElements()){String token = st.nextToken();System.out.print(i+"."+token+" ");i++;
}
输出内容如下:
分割后Token的个数-->26
1.Both 2.sides 3.reached 4.consensus 5.on 6.market 7.access 8.and 9.the 10.text 11.of 12.free 13.trade 14.agreement, 15.making 16.a 17.substantive 18.progress 19.and 20.a 21.basic 22.completion 23.of 24.the 25.FTA 26.negotiation.
demo2
使用指定的分隔符分割字符串
String content = "https://blog.jetbrains.com/idea/2009/04/global-unused-declaration-inspection/";StringTokenizer st = new StringTokenizer(content,"/");System.out.println("分割后Token的个数-->" + st.countTokens());int i = 1;while (st.hasMoreElements()) {String token = st.nextToken();System.out.print(i + "." + token + " ");i++;}
}
输出内容如下:
分割后Token的个数-->6
1.https: 2.blog.jetbrains.com 3.idea 4.2009 5.04 6.global-unused-declaration-inspection
demo3
String content = "https://blog.jetbrains.com/idea/2009/04/global-unused-declaration-inspection/";
StringTokenizer st = new StringTokenizer(content,"/",true);
System.out.println("分割后Token的个数-->" + st.countTokens());
int i = 1;
while (st.hasMoreElements()) {String token = st.nextToken();System.out.print(i + "." + token + " ");i++;
}
输出内容:
分割后Token的个数-->13
1.https: 2./ 3./ 4.blog.jetbrains.com 5./ 6.idea 7./ 8.2009 9./ 10.04 11./ 12.global-unused-declaration-inspection 13./
参考文章:http://blog.csdn.net/riyunzhu/article/details/7989145
StringTokenizer类详解相关推荐
- stringtokenizer java_基于Java中的StringTokenizer类详解(推荐)
StringTokenizer是字符串分隔解析类型,属于:Java.util包. 1.StringTokenizer的构造函数 StringTokenizer(String str):构造一个用来解析 ...
- OpenCV Mat类详解和用法(官网原文)
参考文章:OpenCV Mat类详解和用法 我马克一下,日后更 官网原文链接:https://docs.opencv.org/3.2.0/d6/d6d/tutorial_mat_the_basic_i ...
- 转载:c+string类详解
C++ string 类详解 </h1><div class="clear"></div><div class="postBod ...
- JDBC学习笔记02【ResultSet类详解、JDBC登录案例练习、PreparedStatement类详解】
黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...
- JDBC学习笔记01【JDBC快速入门、JDBC各个类详解、JDBC之CRUD练习】
黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...
- Android复习14【高级编程:推荐网址、抠图片上的某一角下来、Bitmap引起的OOM问题、三个绘图工具类详解、画线条、Canvas API详解(平移、旋转、缩放、倾斜)、矩阵详解】
目 录 推荐网址 抠图片上的某一角下来 8.2.2 Bitmap引起的OOM问题 8.3.1 三个绘图工具类详解 画线条 8.3.16 Canvas API详解(Part 1) 1.transla ...
- Java中的Runtime类详解
Java中的Runtime类详解 1.类注释 /**Every Java application has a single instance of class Runtime that allows ...
- [NewLife.XCode]实体类详解
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
- basicdatasourcefactory mysql_Java基础-DBCP连接池(BasicDataSource类)详解
Java基础-DBCP连接池(BasicDataSource类)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 实际开发中"获得连接"或"释放资源 ...
最新文章
- 深拷贝——将对象拷贝到底
- mysql 主从复制的1032错误
- Logistic Regression(逻辑回归)原理及公式推导
- Python使用socket实现局域网传输数据(附加json数据传输及解析)以及判断socket是否断开连接
- Vue怎样新建并启动项目(图文教程详解)
- 微服务架构 —— 服务雪崩与容错方案
- php无法添加数据库,无法添加数据到数据库
- 1.两数之和-LeetCode
- centos下安装和卸载jdk
- Exchange 2010 证书续期
- WTL for MFC Programmers, Part V - Advanced Dialog UI Classes
- Audition CC 2019 Essential Training AuditionCC 2019基本训练 Lynda课程中文字幕
- 外设键盘win和alt功能互换解决方法
- iOS开发工程师(SDK),U3D主程,制作人 招聘
- Redisson(1)分布式锁——如何解决死锁问题
- 【信号调理】用“晶体三极管”搭建CE放大器的实操经验分享
- HNUST 计算机组成原理课设
- leetCode刷题记录(四月)
- 校园服务器虚拟化方案,联想服务器虚拟化方案构建数字校园
- DM9000AEP/CEP 技术文件
热门文章
- PHP fscanf
- C语言 =(按位与后赋值)^=(按位异或后赋值) |=(按位或后赋值)
- layui设置textarea高度
- SAP系统接口对接历险记
- jQuery 手风琴案例
- 联想笔记本进入pe_lenovo怎么进入pe系统?
- html5div随窗口大小,css怎么设置div随着窗口大小变换
- Windows Terminal美化杂记-Windows Terminal使用与配置
- Settings学习
- 国际音标(IPA)和美国音标(KK)对照表