String、StringBuffer、StringBuilder区别
对于方法而言,参数是为了该方法提供信息的,而不是为了让方法改变自己。
String:字符串常量
StringBuffer:字符串变量(线程安全)
StringBuilder:字符串变量(非线程安全,速度快)
String 类型和StringBuffer 类型的主要性能区别其实在于String 是不可变的对象,
每次对 String 类型进行改变的时候其实都等同于生成了一个新的String 对象,然后将指针指向新的String 对象
如果是使用StringBuffer 类,每次结果都会对StringBuffer 对象本身进行操作,而不是生成新的对象,再改变对象引用。
一般情况下我们推荐使用StringBuffer ,特别是字符串对象经常改变的情况下。
在对象不需要同步机制支持的情况下,StringBuilder是StringBuffer的良好替代。
StringBuilder:
append()
insert()
reserve()
replace()
length()