四、StringBuilder类
4.1、字符串拼接问题
由于String类的对象内容不可改变,所以每当进行字符串拼接时,总是会在内存中创建一个新的对象。
在API中对String类有这样的描述:字符串是常量,它们的值在创建后不能被更改。
字符串缓冲区支持可变的字符串。因为String 对象是不可变的,所以可以共享。
对比:
4.2、构造方法
根据StringBuilder的API文档,常用构造方法有2个:
public StringBuilder();//构造一个空的StringBuilder容器。
public StringBuilder(string str);//构造一个StringBuilder容器,并将字符串添加进去。
4.3、常用方法
StringBuilder常用的方法有2个:
public StringBuilder append(...);//添加任意类型数据的字符串形式,并返回当前对象自身。
public String toString();//将当前StringBuilder对象转换为String对象。
4.3.1、append方法()
append方法具有多种重载形式,可以接收任意类型的参数。任何数据作为参数都会将对应的字符串内容添加到StringBuilder中。append方法返回的是this,调用方法的对象。
链式編程:方法返回值是一个对象,可以继续调用方法。
4.3.2、toString方法()
stringBuilder和string可以相互转换:
String ->StringBuilder:
可以使用StringBuilder的构造方法,StringBuilder(String str) 构造一个字符串生 成器,并初始化为指定的字符串内容。
StringBuilder -> String:
可以使用stringBuilder中的tostring万法