1、字符串进行拼接时,每次拼接使用+都会创建大量字符串对象,浪费内存空间,
所以当涉及到需要进行大量字符串的拼接操作时,建议使用JDK自带的两个类:
java.lang.StringBuffer
java.lang.StringBuilder
我们可以调用他们的append()方法来完成拼接操作。
2、append()方法
public StringBuffer append()//形参可为各种类型
3、如何优化StringBuffer的性能?
在创建StringBuffer的时候尽可能给定一个初始化容量;
最好减少底层数组的扩容次数,预估一下,给一个大一些的初始化容量。
4、insert()
public StringBuffer insert(int offset, int i)
//将第二个参数以字符串表示形式插入此序列中。 offset:偏移量
5、StringBuilder与StringBuffer的区别:
buffer有synchronized关键字修饰。表示StringBuffer在多线程环境运行下是安全的。
build不安全,其他的没什么区别
public static void main(String[] args) {
StringBuffer stringBuffer = new StringBuffer("hello");
StringBuffer s1 = stringBuffer.append('a');
System.out.println(s1);//helloa
StringBuffer s2 = stringBuffer.append(123);
System.out.println(s2);//helloa123
StringBuffer s3 = stringBuffer.append(true);
System.out.println(s3);//helloa123true
//insert()演示
StringBuffer ins = s3.insert(2,"ooo");
System.out.println(ins);//heooolloa123true
//初始化容量
StringBuffer stringBuffer2 = new StringBuffer(100);
StringBuffer s4 = stringBuffer2.append('a');
System.out.println(s4);//a
}