StringTokenizer是Java中一個(gè)用于分割字符串的類,可以按照指定的分隔符將字符串分割成多個(gè)子串。
使用StringTokenizer可以通過以下步驟完成字符串的分割:
StringTokenizer st = new StringTokenizer(str, delimiter);
其中,str
是要分割的字符串,delimiter
是分隔符,可以是一個(gè)字符串或者一個(gè)字符。
hasMoreTokens()
方法檢查是否還有未被分割的子串:while (st.hasMoreTokens()) {
// ...
}
nextToken()
方法獲取下一個(gè)子串:String token = st.nextToken();
nextToken()
方法返回下一個(gè)被分割的子串,并將分割位置移動(dòng)到下一個(gè)子串的起始位置。
下面是一個(gè)使用StringTokenizer的例子,將字符串"Hello,World,Java"按照逗號(hào)分割成多個(gè)子串:
String str = "Hello,World,Java";
StringTokenizer st = new StringTokenizer(str, ",");
while (st.hasMoreTokens()) {
String token = st.nextToken();
System.out.println(token);
}
輸出結(jié)果為:
Hello
World
Java
注意事項(xiàng):
默認(rèn)情況下,StringTokenizer將連續(xù)的分隔符視為一個(gè)分隔符,即不會(huì)返回空字符串。如果需要返回空字符串,請(qǐng)?jiān)趧?chuàng)建StringTokenizer對(duì)象時(shí)指定第三個(gè)參數(shù)為true,例如new StringTokenizer(str, delimiter, true)
。
StringTokenizer是一個(gè)已經(jīng)過時(shí)的類,在Java 1.4中被引入的更強(qiáng)大的字符串分割方法是使用split()
方法,它可以通過正則表達(dá)式進(jìn)行分割。推薦使用split()
方法代替StringTokenizer。