使用StringTokenizer分解字符串
Java切割字符串。一般使用substring、split、StringTokenizer来处理,前两种是String对象的方法,使用字符串能够直接处理,本文介绍下StringTokenizer的使用。
StringTokenizer 的实例化使用new的方式。
构造方法最多有3个參数:
StringTokenizer(String str, String delim, boolean returnDelims)
第一个參数为我们要处理的字符串。
第二个參数为我们切割字符串的切割标记字符。
delim的默认值为” \t\n\r\f”(前面有一个空格,不包括双引號)
第三个參数意思是,是否包括切割标记字符本身。默认值为false。
StringTokenizer 中的方法hasMoreElements()和hasMoreElements()的使用方法是一样的,仅仅是StringTokenizer为了实现Enumeration接口而实现的方法。
StringTokenizer 中的方法nextElements()和nextToken()的使用方法是一样的。返回StringTokenizer的下一个标记。
以下给出一个实例:
public static void main(String[] args) {
StringBuffer str = new StringBuffer();
String s = "|struts.xml,1451210087873.xml,.xml,#OA数据库脚本.txt,1451210087857.txt,.txt,";
// for (int i = 0; i < 500000; i++) {
str.append(s);
// }
String temp = null;
long begin = System.currentTimeMillis();
StringTokenizer token = new StringTokenizer(str.toString(),"|#");
while(token.hasMoreTokens()){
temp = token.nextToken();
StringTokenizer token1 = new StringTokenizer(temp,",");
if(token1.hasMoreTokens()){// 仅仅取第一个就可以
System.out.println(token1.nextToken());
}
}
System.out.println("耗时:" + (System.currentTimeMillis() - begin));// 9460
}
本例为了输出文件名称。直接使用了“|”和“#” 都支持的效果。
相比String的substring和split来说,StringTokenizer更好。
小数据量方面体现不出什么。假设是大数据操作,StringTokenizer 的性能理论上是优与其它两种的。
使用StringTokenizer分解字符串的更多相关文章
- java通过StringToKenizer获取字符串中的单词根据空格分离-简写版
public class StringToKenizer { public static void main(String[] args) { String strin = "Hello J ...
- java通过StringToKenizer获取字符串中的单词根据空格分离-详情版
public class DaXie { public static void main(String[] args) { String strin = "Hello Java World! ...
- StringTokenizer:字符串分隔用法简介
StringTokenizer:字符串分隔解析类型 属于:java.util包. 1.构造函数. 1. StringTokenizer(String str) :构造一个用来解析str的StringT ...
- StringTokenizer拆分字符串
今天要做一个过滤特殊字符的需求, 看了下公司以前过滤特俗字符代码, 用的居然是 StringTokenizer, 完全不熟悉啊, 于是恶补了一下, 把StringTokenizer在JDK中的文档也翻 ...
- lua脚本分解字符串
--local str = "文字45 文字 789 文们adsd45 文字 wowo 文字 文字 wowo我们 wowo456 wiwo 465我们 456sdf 45 45我们adsd4 ...
- Java StringTokenizer分割字符串
除了String本身的split方法,JDK在很早就提供了StringTokenizer这个类来分割字符串: 不过,由于正则表达式和String本身的功能越来越多,StringTokenizer已经被 ...
- 用StringHelper.Split分解字符串
StringHelper提供了大量的方法,从而用链试写法处理字符串,实现对字符串的各种操作.比如: var s1,s2:string; begin s1:='abcdefg'; s2:=s1.subs ...
- C#中Spli、正则表达式分解字符串详解
一.String.Split方法提供了如下6个重载函数: 名称 说明 String.Split (Char[]) 返回包含此实例中的子字符串(由指定 Char 数组的元素分隔)的 String 数组. ...
- leetcode题解之分解字符串域名
1.题目描述 A website domain like "discuss.leetcode.com" consists of various subdomains. At the ...
随机推荐
- sql2012简体中文版安装
sql2012简体中文版安装 导航 介绍 安装 先决条件 装.NET3.5 关闭Windows防火墙 运行Setup.exe 安装程序支持规则 产品密钥 许可条款 产品更新 安装安装程序文件 安装程序 ...
- C Python类型互换
从Python到C的转换用PyArg_Parse*系列函数,int PyArg_ParseTuple():把Python传过来的参数转为C:int PyArg_ParseTupleAndKeyword ...
- VUE 数据绑定
1.数据双向绑定 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=" ...
- 一个漂亮而强大的自定义view
代码地址如下:http://www.demodashi.com/demo/13502.html 简介 主要提供一个漂亮而强大的自定义SeekBar,进度变化由提示牌 (sign)展示,具有强大的属性设 ...
- iOS AVPlayer视频播放器
代码地址如下:http://www.demodashi.com/demo/11168.html 一.运行效果 二.实现过程 ①.创建播放器avPlayer //创建播放器 url = [url str ...
- Linux 目录和文件操作
Linux常用命令--目录和文件操作 [目录]删除.复制.移动 : 1.删除文件夹用:rmdir 文件夹名 但是rmdir不能删除非空的文件夹,那如何删除非空文件夹呢: 2.通常情况下,删除文件用:r ...
- Linux REMOTE HOST IDENTIFICATION HAS CHANGED错误解决方法
http://linuxme.blog.51cto.com/1850814/375752 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED解决 ...
- asp.net 查询本地excel 获取信息
string filepath = @"D:\test1.xls"; string sheetname = "Sheet5"; ...
- MySQL之mysql客户端工作的批处理一些使用手法
通常我们会用mysql这个客户端程序来连接mysql库.这个通常是工作在交互式模式下的.如我们连接上mysql并执行如下操作: mysql -uroot -h127. -P3306 Welcome t ...
- Atitit.隔行换色 变色 css3 结构性伪类选择器
Atitit.隔行换色 变色 css3 结构性伪类选择器 1.1. css3隔行换色扩展阅读 1 1.2. 结构伪选择器 1 1.3. jQuery 选择器2 1.1. css3隔行换色扩展阅读 原 ...