一、性能上
1、String:字符串常量,不可修改,每次添加字符串都要新建对象,占据较大空间时间
String a = "aabc";
//结果为:a = "aabcbcd"
//程序新建字符串对象a来获取新的值
a=a+"bcd";
2、StringBuffer & StringBuilder:字符串变量,可修改,例如append方法追加字符串
StringBuffer a = new StringBuffer();
//结果为a = "abcefg"
a.append("abc").append("efg");
二、安全性上(多线程)
1、String:不可更改,线程安全
2、StringBuffer:方法带synchronized关键字,线程安全,用于多线程大量字符串操作
3、StringBuilder:性能高、线程不安全,用於单线程大量字符串操作