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