StringBuffer和StringBuilder是对String的一个优化
String对象一旦创建后,String中的呃逆荣是不能够改变的。每次改变String都会创建新的对象,这样的话会造成相应空间的兰浪费。
StringBuffer和StringBuilder的内容是能够动态改变的,但是StringBuffer和StringBuilder的区别是StringBuffer是线程安全的(StringBuffer中的绝大部分方法都加了同步关键字),而StringBuilder是线程不安全的,所有其运行效率会更高,如果一个字符串是在方法里面定义的话,这种情况仅仅可能有一个线程访问它,不存在安全因素,这时推荐StringBuilder。如果一个实例变量是在类里面定义的,二而且在多线程下会访问到,这时最好使用StringBuffer