StringBuilder类:字符串缓冲区,可以提高字符串的操作效率(看成一个长度可以变化的字符串);底层也是一个数组,但是没有被final修饰,可以改变长度
StringBuilder在内存中始终是一个数组,占用空间少,效率高,如果超出了StringBuilder的容量,会自动扩容
/**
* 构造方法:
* 1.StringBuilder()构造一个不带任何字符的字符串生成器,其初始容量为16个字符
* 2.StringBuilder(String str)构造一个字符串生成器,并初始化为指定的字符串内容
* 常用方法:
* 1.public StringBuilder append():添加任意数据类型的字符串形式,并返回当前对象本身
* 2.public String toString():将当前StringBuilder对象转换为String对象
*/
public class StringBuilderDemo {
public static void main(String[] args) {
StringBuilder stringBuilder = new StringBuilder();
System.out.println(stringBuilder);//""
StringBuilder builder = new StringBuilder("abc");
System.out.println(builder);//abc
StringBuilder stringBuilder1 = stringBuilder.append("abc");
System.out.println(stringBuilder1);//abc
System.out.println(stringBuilder==stringBuilder1);//true
stringBuilder1.append(1).append(true).append("efg");//链式编程
System.out.println(stringBuilder1);//abc1trueefg
String s = "hello";
//String --> StringBuilder
StringBuilder stringBuilder2 = new StringBuilder(s);
stringBuilder2.append(" word");
System.out.println(stringBuilder2);//hello word
//StringBuilder --> String
String s1 = stringBuilder2.toString();
System.out.println(s1);//hello word
}
}