相同点
string 当修改字符串时,是在内存中创建一个新的字符串,并把地址传给string 对象,如果频繁修改会导致空间浪费。
stringbuffer 和 stringbuilder 是在初始时创建一个容器,当修改的时候会修改容器中的内容,而不是创建一个新的容器,所以如果有一个需要频繁改变的字符串的话,使用 stringbuffer 或 stringbuffer
不同点
StringBuilder 线程不安全 效率高
StringBuffer 线程安全 效率低(使用了synchronized修饰保证线程安全)