String(+) vs StringBuffer(append)
以前一直以为append比+快,今天上网查了资料才发现:这种说法是不全面的.
正确的说法应该是:
1.在运行期做字符串连接,那么append 显然比+快很多
2.在编译期就可以做连接的话,那么使用+要比append快.
例子:
String temp="nnnnnnn"+"jjjjjj"+"jjjjj";(1)
StringBuffer t=new StringBuffer();
t.append("nnnnnnn").append("jjjjjj").append("jjjjjj");(2)
执行的话,上面(1)比(2)快,因为(1)在编译期就已经做好了,相当于String temp="nnnnnnnjjjjjjjjjjjj";而(2)则需要在运行期中做计算,所以比(1)慢.
真牛,呵呵.