以前一直以为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)慢.
真牛,呵呵.
本文探讨了在Java中使用不同方法进行字符串连接的性能差异。通过对比分析,在编译期即可完成的字符串连接使用加号(+)更快,而在运行期动态构建的字符串连接使用StringBuffer的append方法更为高效。
1770

被折叠的 条评论
为什么被折叠?



