Posted on 2009-05-21 22:49
dennis 閱讀(3208)
評論(2) 編輯 收藏 所屬分類:
java
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);
PS.今天支付寶的蔡學鏞大師到公司演講,做的是《關于我的IT學習生活》的主題講座,介紹了他的經歷和經驗,留下深刻印象的是他看起來很年輕,和照片相差比較大,并且上過3所大學,呆過兩家同一個人開的公司并都倒閉了,非常有趣的經歷。