API中解释如下:--------------StringTokenizerpublic StringTokenizer(String str, String delim)为指定字符串构造一个 string tokenizer。delim 参数中的字符都是分隔标记的分隔符。分隔符字符本身不作为标记。 注意,如果 delim 为 null,则此构造方法不抛出异常。但是,尝试对得到的 StringTokenizer 调用其他方法则可能抛出 NullPointerException。 参数:str - 要分析的字符串。delim - 分隔符。 抛出: NullPointerException - 如果 str 为 null。----StringTokenizerpublic StringTokenizer(String str)为指定字符串构造一个 string tokenizer。tokenizer 使用默认的分隔符集合 " /t/n/r/f",即:空白字符、制表符、换行符、回车符和换页符。分隔符字符本身不作为标记。 参数:str - 要分析的字符串。 抛出: NullPointerException - 如果 str 为 null。---- 方法详细信息---- hasMoreTokenspublic boolean hasMoreTokens()测试此 tokenizer 的字符串中是否还有更多的可用标记。如果此方法返回 true,那么后续调用无参数的 nextToken 方法将成功地返回一个标记。 返回:当且仅当该字符串中当前位置后至少有一个标记时才为 true;否则为 false。 nextTokenpublic String nextToken()返回此 string tokenizer 的下一个标记。 返回:此 string tokenizer 的下一个标记。 抛出: NoSuchElementException - 如果此 tokenizer 的字符串中没有更多标记。 nextTokenpublic String nextToken(String delim)返回此 string tokenizer 的字符串中的下一个标记。首先,字符集合被更改为字符串 delim 中的字符,该字符集合被认为是 StringTokenizer 对象的分隔符。接着返回字符串中当前位置之后的下一个标记。当前位置被提前到所识别的标记前。进行此调用后新的分隔符集合仍然保持默认值。 参数:delim - 新的分隔符。 返回:转换到新的分隔符集后的下一个标记。 抛出: NoSuchElementException - 如果此 tokenizer 的字符串中没有更多标记。 NullPointerException - 如果 delim 为 null。 hasMoreElementspublic boolean hasMoreElements()返回与 hasMoreTokens 方法相同的值。它的存在使得此类可以实现 Enumeration 接口。 指定者:接口 Enumeration<Object> 中的 hasMoreElements返回:如果有更多标记,则为 true;否则为 false。另请参见:Enumeration, hasMoreTokens() nextElementpublic Object nextElement()除了其声明返回值是 Object 而不是 String 之外,它返回与 nextToken 方法相同的值。它的存在使得此类可以实现 Enumeration 接口。 指定者:接口 Enumeration<Object> 中的 nextElement返回:字符串中的下一个标记。 抛出: NoSuchElementException - 如果此 tokenizer 的字符串中没有更多标记。另请参见:Enumeration, nextToken() countTokenspublic int countTokens()计算在生成异常之前可以调用此 tokenizer 的 nextToken 方法的次数。当前位置没有提前。 返回:使用当前分隔符集的字符串中剩余的标记数。另请参见:nextToken()===================================================例StringTokenizer string = new StringTokenizer(dataStr, " "); //定义一个StringTokenizer,以" "为分隔符分隔dataStr while(string.hasMoreTokens()) { value[i] = Integer.parseInt(string.nextToken()); //string的nextToken方法返回被分隔符分开的字符串 举个例子:dateString="one two three" value[i]里存放的是就是按" "分隔开的one, two, three 即:value[0]=one,value[1]=two............ jdk1.4里可以用String类的split方法完成同样的功能 StringTokenizer string = new StringTokenizer("one two ghree"," "); while (string.hasMoreTokens()) { System.out.print(tring.nextToken()); } //去掉间隔字符,直接输出。