JAVA StringBuffer

概述

带有缓冲区的字符串,相比于String它的优势是在修改字符串时会在原始对象上修改,不会创建新的对象操作,大大提高了效率。是一个final修饰的类,不可被继承

是线程安全的,适合在多线程中使用,否则推荐使用StringBuilder

构造方法

  • StringBuffer():创建一个没有初值的StringBuffer
  • StringBuffer(String):创建一个初值是String的StringBuffer

常用方法

append()

追加,在字符串后追加字符串,相当于Sting中的+,但不会创建新的字符串

例子
使用String对象进行拼接20000次,并打印出执行的时间

long startTime = System.currentTimeMillis();
String str="";
for(int i=0;i<20000;i++){
    str+="hello world";
}
long endTime=System.currentTimeMillis();
System.out.println(endTime-startTime);
System.out.println(str.length());

使用StringBuffer对象进行拼接20000次,并打印出执行的时间

long startTime = System.currentTimeMillis();
StringBuffer str=new StringBuffer();
for(int i=0;i<20000;i++){
    str.append("hello world");
}
long endTime=System.currentTimeMillis();
System.out.println(endTime-startTime);
System.out.println(str.length());

观察执行结果

length()

返回长度

delete()

删除

insert()

插入

reverse()

反转字符串

有些方法与String类相同


原文出处:/show_1EF4rzBoV0LE.html