Topic: 【原创】JAVA经典实例--利用StringTokenizer分解字符串

  Print this page

1.【原创】JAVA经典实例--利用StringTokenizer分解字符串 Copy to clipboard
Posted by: prettyxx
Posted on: 2003-12-17 11:30

问题:将一个字符串分解为单词或称token(标记)

解决之道:
为给定的字符串构造相应的StringTokenizer对象,并且调用其hasMoreTokens()方法和nextToken()方法

代码:
import java.util.*;

/** 使用 StringTokenizer 类 */
public class StrTokDemo4 {
public final static int MAXFIELDS = 5;
public final static String DELIM = "|";

/** 处理一个字符串,返回一个由各字段组成的数组 */
public static String[] process(String line) {
String[] results = new String[MAXFIELDS];

// 除非你要求StringTokenizer类,否则它会丢弃许多null标记
StringTokenizer st = new StringTokenizer(line, DELIM, true);

int i = 0;
// 获得每个token
while (st.hasMoreTokens()) {
String s = st.nextToken();
if (s.equals(DELIM)) {
if (i++>=MAXFIELDS)
// 这有些乱:参照StrTokKemo4b,它使用一个Vector
// 允许任何数量的字段
throw new IllegalArgumentException("Input line " +
line + " has too many fields");
continue;
}
results[i] = s;
}
return results;
}

public static void printResults(String input, String[] outputs) {
System.out.println("Input: " + input);
for (int i=0; i<outputs.length; i++)
System.out.println("Output " + i + " was: " + outputs[i]);
}

public static void main(String[] a) {
printResults("A|B|C|D", process("A|B|C|D"));
printResults("A||C|D", process("A||C|D"));
printResults("A|||D|E", process("A|||D|E"));
}
}

2.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: prettyxx
Posted on: 2003-12-17 11:36

偶是菜菜MM一名,现在正在学习JAVA中,偶看的书中有很多不错的例子,所以总结出来,和大家一起学习讨论,如果大家觉得好,偶以后再继续,如果大家觉得这些太easy了,没什么意义,偶就不浪费服务器的资源了^_^
以后还要大家多多帮助哦^_^

3.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: jameszhang
Posted on: 2003-12-17 11:43

也不容易啦!以后多贴吧,呵呵

4.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: dapan
Posted on: 2003-12-17 13:52

欢迎欢迎!

帮你编辑了一下帖子,更好看一些。

^_^

5.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: collins
Posted on: 2003-12-17 15:47

JDK1.4提供了String.split方法

6.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: mochow
Posted on: 2003-12-17 15:51

to jameszhang

什么叫"也不容易",分明是性别歧视了 :<
java也没什么呀,难道mm学就很不容易了?
mm学工科的很多,编程序的也不少,对编程感兴趣
也没什么嘛。

7.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: plfsh
Posted on: 2003-12-17 16:10

有道理、现在mm在工科大学可是越来越多、同意楼上。

8.Re:【原创】JAVA经典实例--利用StringTokenizer分解字符串 [Re: prettyxx] Copy to clipboard
Posted by: Starcraft
Posted on: 2003-12-17 16:30

俺班也有MM学,不过学的太烂了,呵呵Smile


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923