public final class String extends Objectimplements Serializable,
Comparable<String>, CharSequence
public final class StringBuffer extends Objectimplements Serializable, CharSequence
public final class StringBuilder extends Objectimplements Serializable, CharSequence
小小总结:
String拼接时会产生新对象;
StringBuffer拼接时不会产生新对象,多次拼接会比String效率高,而且是线程安全;
StringBuilder的效率又比StringBuffer更高,但不是线程安全,不保证同步;
public class MyString
{
public static void main(String[] args)
{
long t1;
long t2;
t1 = System.currentTimeMillis();
String s = "hello ";
for (int i = 0; i < 1000; i++)
{
s += "hello ";
}
t2 = System.currentTimeMillis();
System.out.println(t2 - t1);
t1 = System.currentTimeMillis();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < 1000; i++)
{
sb.append("hello ");
}
t2 = System.currentTimeMillis();
System.out.println(t2 - t1);
}
}