很简单的一个例子: 不要使用 String ts=new String(hello); 这样会生成多余的对象 最好使用 String ts=hello; //add by chris 很多文章都建议使用stringbuffer来代替string为什么会带来性能的提高哪? 为了理解深入点我们看一个例子 String s = Testing String; String s = Concatenation Performance; String s = s + + s; 另外一种方法 StringBuffer s = new StringBuffer(); sappend(Testing String); sappend( ); sappend(Concatenation Performance); String s = stoString(); 在上面这个例子里面其实性能是没有提高的为什么会这样哪? 这个在这里就不讨论了有兴趣请研究一下stringbuffer的源代码 //end of add 其实在jvm里面如果你下一次再构造一个值为hello的对象stringjvm可以重用以前的对象的 而且不要在循环或者多次调用的地方新建一个对象一定要尽量避免这个 |