posts - 32,  comments - 149,  trackbacks - 0
java.util.StringTokenizer

功效:
将字符串以定界符为界,分析为一个个的token(可理解为单词),定界符可以自己指定。 


1、构造函数。

1. StringTokenizer(String str) :构造一个用来解析str的StringTokenizer对象。java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。
2. StringTokenizer(String str, String delim) :构造一个用来解析str的StringTokenizer对象,并提供一个指定的分隔符。如new StringTokenizer("A|001:B|002:C|003",":");
3. StringTokenizer(String str, String delim, boolean returnDelims) :构造一个用来解析str的StringTokenizer对象,并提供一个指定的分隔符,同时,指定是否返回分隔符。
2、方法。
说明:
1. 所有方法均为public;
2. 书写格式:[修饰符] <返回类型> <方法名([参数列表])

1. int countTokens() :返回nextToken方法被调用的次数。如果采用构造函数1和2,返回的就是分隔符数量(例2)。
2. boolean hasMoreTokens() :返回是否还有分隔符。
3. boolean hasMoreElements() :结果同2。
4. String nextToken() :返回从当前位置到下一个分隔符的字符串。
5. Object nextElement() :结果同4。
6. String nextToken(String delim) :与4类似,以指定的分隔符返回结果。
3、例子。() split 与 StringTokenizer 的萧萧区别!

import java.util.StringTokenizer;
public class StringTokenizerDemo
{
   public static void main(String args[])
  {
      String str="100|66,55:200|567,90:102|43,54";
      String abc="A|B|C|D";
      StringTokenizer strToke=new StringTokenizer(str,":");//默认不打印分隔符
      //StringTokenizer strToke=new StringTokenizer(str,":",true);//打印分隔符
      //StringTokenizer strToke=new StringTokenizer(str,":",false);//不打印分隔符
      int size=strToke.countTokens();//3 & 5
      System.out.println("strToke count = "+size);
     while(strToke.hasMoreElements())
    {
       System.out.println(strToke.nextToken());
       //System.out.println(strToke.nextElement()); //效果同上
     }
     //String[] str_abc=str.split("\\|");//结果与StringTokenizer一样
     String[] str_abc=str.split("|");//得到不同的结果
     for(int i=0;i<str_abc.length;i++)
     {
        System.out.println(str_abc[i]);
     }
  }
}
posted on 2007-01-15 21:48 chunkyo 阅读(7211) 评论(4)  编辑  收藏 所属分类: Java技术

FeedBack:
# re: StringTokenizer(字符串分隔解析类型)
2007-01-18 15:25 | 闲耘
StringTokenizer strToke=new StringTokenizer(str,":");//默认不打印分隔符
//StringTokenizer strToke=new StringTokenizer(str,":",true);//打印分隔符
//StringTokenizer strToke=new StringTokenizer(str,":",false);//打印打印分隔符
--
HOHO,麻烦修正。  回复  更多评论
  
# re: StringTokenizer(字符串分隔解析类型)
2007-01-19 12:34 | chunkyo
谢谢了,呵呵 ,没看仔细!  回复  更多评论
  
# re: StringTokenizer(字符串分隔解析类型)
2007-01-19 12:35 | chunkyo
@闲耘
sorry!thank you!  回复  更多评论
  
# re: StringTokenizer(字符串分隔解析类型)[未登录]
2012-02-16 10:45 | Hey
String numStr="99 345 8 888 55 0 -9999 30";
应用StringTokenizer,解决了分割,然后放进String数组内,
之后要对该字符串进行排序:
String num="-9999 0 8 30 55 99 345 888";
有更好的排序方法吗?  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 
<2007年1月>
31123456
78910111213
14151617181920
21222324252627
28293031123
45678910

这个博客主要是关于java技术和开源技术,大家一起来进步了!

常用链接

留言簿(12)

随笔分类

随笔档案

文章分类

收藏夹

DotNet

Java技术网站

Linux VS Unix

其他常去网站

常光顾的BLOG

文学类网站

游戏类网站

最新随笔

搜索

  •  

积分与排名

  • 积分 - 196219
  • 排名 - 294

最新评论

阅读排行榜

评论排行榜