最快是:StringBuilder buf = new StringBuilder ();
buf.append("a");
buf.append("b");
buf.append("c");
tmp = buf.toString();
因为StringBuilder 是带缓冲区的,并且是线程不安全的(即:new一个缓冲区,不断往里填充数据,然后返回字符串,由于不考虑线程安全,速度更快。但是不能用于多线程,因为是线程不安全的,会有数据安全问题)。StringBuffer次之,且StringBuffer是线程安全的,能用于多线程,但效率比StringBuilder 差一点。字符串拼接效率肯定是最低的,由于字符串是不可变的,每次拼接会new出一个新的String对象,太耗资源。所以,涉及频繁的字符串改变问题,不要用字符串拼接的方式,耗资源。应该用StringBuilder 和StringBuffer,具体的:单线程用StringBuilder ,多线程用StringBuffer |