Posted on 2006-12-19 14:57
李鹏 阅读(3027)
评论(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类来说,就没有这个必要。
同样的操作在遇到下列分割符时同样需要:
"+"、"*"、"$"、"\"。