1、什么是StringTokenizer
?? 它是一個(gè)很方便的字符串分解器召娜,主要用來(lái)根據(jù)分隔符把字符串分割成標(biāo)記(Token)运褪,然后按照請(qǐng)求返回各個(gè)標(biāo)記。這個(gè)過(guò)程稱(chēng)為T(mén)okenization玖瘸,實(shí)際上就是把字符序列轉(zhuǎn)換成應(yīng)用程序能夠理解的多個(gè)標(biāo)記秸讹。
2、它怎么用
你可以用以下三種構(gòu)造函數(shù)中的任意一種創(chuàng)建StringTokenizer分解器:
StringTokenizer(String sInput):以空白字符(“ ”雅倒,“\t”璃诀,“\n”)為分隔符分割字符串。
StringTokenizer(String sInput, String sDelimiter):以sDelimiter為分隔符分割字符串蔑匣。
StringTokenizer(String sInput, String sDelimiter, boolean bReturnTokens):以sDelimiter為分隔符分割字符串劣欢,但如果bReturnTokens為true,則分隔符也作為標(biāo)記返回裁良。
ForExample:
public static void main(String[] args) {
StringTokenizer stringTokenizer = new StringTokenizer("abc def");
while (stringTokenizer.hasMoreTokens()) {
System.out.println(stringTokenizer.nextToken());
}
}
abc
def
public static void main(String[] args) {
StringTokenizer stringTokenizer = new StringTokenizer("ab c/def","/");
while (stringTokenizer.hasMoreTokens()) {
System.out.println(stringTokenizer.nextToken());
}
}
ab c
def
3凿将、它有哪些坑
?? 這個(gè)類(lèi)只是簡(jiǎn)單地在輸入字符串中查找分隔符,一旦找到了分隔符就分割字符串价脾。它不會(huì)檢查分隔符是否在子串之中這類(lèi)條件牧抵,當(dāng)輸入字符串中出現(xiàn)兩個(gè)連續(xù)的分隔符時(shí),它也不會(huì)返回""(字符串長(zhǎng)度為0)形式的標(biāo)記彼棍。
ForExample:
StringTokenizer stringTokenizer = new StringTokenizer("abbbbc","b");
while (stringTokenizer.hasMoreTokens()) {
System.out.println(stringTokenizer.nextToken());
}
a
c