String.split方法很常用,用於切割字符串,split傳入的參數是正則表達式,它的內部是每次都comiple正則表達式,再調用Pattern.split方法:
public String[] split(String regex, int limit) { return Pattern.compile(regex).split(this, limit); } public String[] split(String regex) { return split(regex, 0); }
因此,如果你調用String.split非常頻繁的話,每次都重新編譯正則表達式的代價很高,性能會受到很大影響,
此時最好自己預編譯Pattern,再調用Pattern.split方法為妙。
String []items=line.split(" "); //替代為 static Pattern pattern=Pattern.compile(" "); String []items=pattern.split(line,0);
注意:如果你根本沒想過用正則來split的話,StringTokenizer性能更高
擴展: StringTokenizer的使用:www.cnblogs.com/gnivor/p/4509268.html