/*
java.lang.StringBuilder
StringBuilder() 构造一个没有字符的字符串构建器,初始容量为16个字符。
StringBuilder(String str) 构造一个初始化为指定字符串内容的字符串构建器。
*/
public class Demo02StringBuilder {
public static void main(String[] args) {
//空参数构造方法
StringBuilder bu1=new StringBuilder();
System.out.println("bu1:"+bu1);
//带字符串的构造方法
StringBuilder stringBuilder = new StringBuilder("123");
System.out.println("bu2:"+stringBuilder);
}
}
/*
public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前自身对象
*/
public class Demo03StringBuilder {
public static void main(String[] args) {
//创建StringBuilder对象
StringBuilder stringBuilder = new StringBuilder();
//使用append方法往StringBuilder中添加数据
/*append方法返回的是this,调用方法的对象stringBuilder,this==stringBuilder*/
//StringBuilder bu2= stringBuilder.append("abc");//把bu的地址赋值给了bu2
//System.out.println(stringBuilder);//abc
//System.out.println(bu2);//abc
//System.out.println(stringBuilder==bu2);//比较地址值
//使用append方法无需接收返回值
stringBuilder.append(10);
stringBuilder.append('y');
stringBuilder.append("李华");
System.out.println(stringBuilder);//abc1s李华
/*
链式编程:方法返回值是一个对象,可以继续调用方法
*/
System.out.print(stringBuilder.append("k").append("o").append("b").append("e"));
}
}
/*
StringBuilder和String可以相互转换
String->StringBulider:可以使用StringBuilder的构造方法
public String toString():将当前StringBuilder对象转换为String对象
*/
public class Demo04StringBuildertoString {
public static void main(String[] args) {
//String-->StringBuilder
String str="hello";
System.out.println("str:"+str);
StringBuilder stringBuilder = new StringBuilder(str);
//往StringBuilder中添加数据
stringBuilder.append("world");
System.out.println("stringBuilder:"+stringBuilder);
//StringBuilder->String
String s=stringBuilder.toString();
System.out.println("s:"+s);
}
}