java里连接字符串,哪种方法效率比较高

String.concat(str);
StringBuffer.append(str);

哪种方法效率高,剩资源,我运行在手机上

StringBuffer和StringBuilder都是可以追加和修改的类,而String是在对象池中拿数据,修改和追加都会生成新的对象,有点浪费资源的感觉,而StringBuilder比StringBuffer效率要高点,他们两个唯一的区别就是StringBuffer是线程安全的StringBuilder是线程不安全的,如果不涉及到线程问题建议你用StringBuilder如果是多线程并发那就得用StringBuffer了!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-10-14
String 直接在字符串池中使用。不像StringBuffer还要去开辟堆。

如果不考虑多线程的关系的话,使用StringBuilder是首选,官方API都是这么说的。
第2个回答  2008-10-14
用StringBuilder,效率高于StringBuffer,用法跟StringBuffer一样,只是如楼上所说不能用于多线程
第3个回答  2008-10-15
String.concat(str)来连接字符串,假如有成千上万的字符串,你得产生多少垃圾!!!
系统内存吃不消了就,呵呵,看情况来用,没什么好不好,要是简单的少量的字符串也可以考虑使用String.concat(str);
楼上的那些线程方面的东西也很对!
第4个回答  2015-11-03
StringBuilder
相似回答