1. String是字符串常量
Stringbuffer是字符串变量(线程安全)
Stringbuilder是字符串变量(非线程安全)
2. 执行速度:Stringbuilde>Stringbuffer>String
3.String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象。而如果是使用 StringBuffer 类则结果就不一样了,每次结果都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,再改变对象引用。