StringTokenizer类 stringtokenizer

实际上,将字符串划分为令牌非常有用,因此Java库包含几种不同的类来完成此任务。当然,最简单的是StringTokenizer类,它是java.util程序包的一部分。该类可以从提供给StringTokenizer构造函数的字符串中读取令牌。这样就创建了令牌赋予器(tokenizer),可以用它从原始字符串逐个读取连续的令牌。从令牌赋予器读取的一系列令牌称为令牌流。

StringTokenize类中最重要的方法如图8-13所示。StringTokenizer的构造函数以3种形式出现。最简单的形式如下面的声明所示,它从名为line的字符串值变量读取令牌:

StringTokenizer tokenizer = new StringTokenizer(line);

使用这种形式的构造函数时,令牌赋予器使用空格和制表符--或者让Character.isWhitespace方法返回true的任何字符--将字符串划分为令牌来标记每个令牌的边界。划分令牌的空格本身不是令牌,不会作为令牌流的一部分返回。

图8-13StringTokenize类中的有用方法

构造函数的第二种形式允许指定划分单个令牌的字符集,这些字符称为定界符。例如,如果创建使用空格或逗号划分单个令牌的令牌赋予器,可以这样重写声明:

StringTokenizer tokenizer = new StringTokenizer(line, " ,");

在StringTokenizer构造函数的单参数版本中,其声明创建的令牌赋予器使用空格和逗号字符来区分令牌,但不将它们作为令牌流的一部分。按照当前的情况,PigLatin示例的伪代码需要可以返回定界符字符的扫描仪。构造函数的第三种形式提供了这种能力,它包含第三个参数,该参数可以确定是否应该将定界符作为令牌返回。如果这个参数是false,令牌赋予器会像和在双参数形式中一样操作。如果参数是true,令牌流会作为单个字符令牌包含每个定界符字符。

在PigLati程序中,需要的令牌赋予器可以将所有标点符号解释为定界符并作为令牌返回这些定界符。要创建这样的令牌赋予器,最简单的方法是定义名为DELIMITERS的命名常量(它包含所有合法标点符号),然后使用下面的代码声明令牌赋予器:

StringTokenizer tokenizer =
StringTokenizer类 stringtokenizer
new StringTokenizer(line, DELIMITERS, true);

声明令牌赋予器之后,调用nextToken方法来依次获得每个令牌,代码就可以从令牌流读取令牌。要确定令牌流何时结束,需要使用hasMoreTokens方法,只要还有其他令牌,它就返回true。这些方法可以用实现方法所需的实际代码取代translateLine中的大多数伪代码。如果用对仍未实现的方法isWord和translateWord的调用取代伪代码的最后剩余位,translateLine的代码如下:

private String translateLine(String line) { 
String result = "";
StringTokenizer tokenizer =
new StringTokenizer(line, DELIMITERS, true);
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
if (isWord(token)) {
token = translateWord(token);
}
result += token;
}
return result;
}

  

爱华网本文地址 » http://www.413yy.cn/a/25101014/234135.html

更多阅读

考公务员需要什么书 女生适合考哪类公务员

考公务员需要什么书——简介公务员考试分为国家公务员考试和地方省考,考公务员需要什么书来学习?推荐国家公务员考试专用教材,以及当地省市的公务员考试专用教材。  而公务员考试笔试科目两科:《申论》和《行政职业能力测验》! 公务

中国好耳朵电视剧类答案大全 看图猜电视剧答案大全

?为了拯救像小编一样对电视剧不感冒的玩家的脑细胞,特此汇总了一些中国好耳朵电视剧类答案,希望能帮助你哦(还有一些正在攻破中......)。中国好耳朵动电视剧类答案大全(仅供参考)二个(两个)字答案越狱 蜗居 奋斗三个字答案老友记 大宅

传奇类网页游戏哪个好玩 手机上哪个斗地主好玩

传奇类网页游戏哪个好玩——简介传奇是角色扮演类游戏,主要职业有战士、法师、道士,游戏中包括了白天、黑夜、贸易、物品等观念,可以通过采矿、打猎等来获得货币,利用货币进行贸易。整个游戏充满了魔力,具有东方色彩。那么最新传奇类网游

类似暗黑2、3的角色动作类ARPG经典单机游戏推荐 暗黑类arpg

类似暗黑2、3的角色动作类ARPG经典单机游戏推荐——简介 喜欢玩有的玩家,肯定对暗黑破坏神2都很熟悉,也曾经倾注无数心血在里面组队,刷装备,后面出来的暗月、魔电版本更增加了他的乐趣。在网上也看到很多朋友搜索有什么类似暗黑2的游戏,

折纸系类 纸飞机的折法 精 纸飞机折纸

折纸不仅可以锻炼一个人的记忆推理能力。也能磨练出良好的心态。关键是折纸是一个能让人放松的事情。这里我带来一个纸飞机的折法。现在的孩子们都上网、打游戏、聊天。不再接触那些上课用笔管吹纸球儿,下课叠纸飞机,用手指射毛人,抡起

声明:《StringTokenizer类 stringtokenizer》为网友拔剑暗中杀分享!如侵犯到您的合法权益请联系我们删除