Posted on 2006-12-19 14:57
李鵬 閱讀(3035)
評論(0) 編輯 收藏 所屬分類:
java
String的split()方法與StringTokenzier都可以分割字符串。
下段代碼顯示了此二者的不同:
package test;
import java.util.StringTokenizer;
public class SplitAndTokenizer {
static String[] array = { "124", "qwer", "456", "wer", "9789" };
static String ch = "|";
public static void main(String[] args) {
String material = "";
for(int i = 0 ; i < array.length; i++){
material += array[i] + ch;
}
System.out.println(material);
//用StringTokenizer進行字符串分割
StringTokenizer st = new StringTokenizer(material,ch);
while(st.hasMoreTokens()){
System.out.print(st.nextToken() + "\t");
}
System.out.println("\"Use StringTokenizer.\"");
//用String.split()的進行字符串分割
String[] arr = material.split("\\|");
for(int i = 0 ; i < arr.length; i++){
System.out.print(arr[i] + "\t");
}
System.out.println("\"Use String.split().\"");
}
}
執行結果:
124|qwer|456|wer|9789|
124 qwer 456 wer 9789 "Use StringTokenizer."
124 qwer 456 wer 9789 "Use String.split()."
以上代碼說明:同樣是分割字符串,對于String.split()方法來說,
直接傳入參數"|"不能正確的分割字符串,需先對它進行轉義。
而對于StringTokenizer類來說,就沒有這個必要。
同樣的操作在遇到下列分割符時同樣需要:
"+"、"*"、"$"、"\"。