Java 分割字符串 StringTokenizer

字符分割 jdk建议使用 split或者 正则表达式,但是追求效率的系统可以参照使用如下
更加优化的字符分割见下节

package String;

import java.util.StringTokenizer;

public class StringTokenizerDemo {

	public static void main(String[] args) {

		StringBuffer sb = new StringBuffer();
		for(int i=0;i<10000;i++){
			sb.append(i);
			sb.append(";");
		}
		long begin = System.currentTimeMillis();
//		StringTokenizerDemo.split(sb.toString());// 15665
		StringTokenizerDemo.token(sb.toString());//62
		System.out.println(System.currentTimeMillis()-begin);
	}

	public static void split(String str){
		for(int i=0;i<10000;i++){
			str.split(";");
		}
	}

	public static void token(String str){
		StringTokenizer st = new StringTokenizer(str,";");
		for(int i=0;i<10000;i++){
			while(st.hasMoreTokens()){
				System.out.println(st.nextToken());
			}
					}
	}

}



明显 split 和 StringTokenizer 不是一个数量级别的差距。
但是 StringTokenizer 不被java建议使用,肯定有其中的道理,待后来查明附上。

你可能感兴趣的:(StringTokenizer)