一、StringBuilder的概述
StringBuilder 是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是 StringBuilder 对象中的内容是可变的
二、StringBuilder与String的区别
String类:内容是不可变的
StringBuilder类:内容是可变的
三、StringBuilder的构造方法
public StringBuilder()创建一个空白可变字符串对象,不含有任何内容
public StringBuilder(String str)根据字符串的内容,来创建可变字符串对象
public static void main(String[] args) {
//public StringBuilder():创建一个空白可变字符串对象,不含有任何内容
StringBuilder sb = new StringBuilder();
System.out.println("sb:" + sb);
System.out.println("sb.length():" + sb.length());
//public StringBuilder(String str):根据字符串的内容,来创建可变字符串对象
StringBuilder sb2 = new StringBuilder("hello");
System.out.println("sb2:" + sb2);
System.out.println("sb2.length():" + sb2.length());
}
四、StringBuilder类拼接和反转方法
public StringBuilder append(任意类型) 拼接数据,并返回对象本身
public StringBuilder insert(int offset, 任意类型) 在指定位置插入数据,并返回对象本身
public StringBuilder reverse() 反转字符串,并返回对象本身
public static void main(String[] args) {
//创建对象
StringBuilder sb = new StringBuilder();
//public StringBuilder append(任意类型):添加数据,并返回对象本身
StringBuilder sb2 = sb.append("hello");
System.out.println("sb:" + sb);
System.out.println("sb2:" + sb2);
System.out.println(sb == sb2);
sb.append("hello");
sb.append("world");
sb.append("java");
sb.append(100);
//链式编程
sb.append("hello").append("world").append("java").append(100);
System.out.println("sb:" + sb);
//public StringBuilder reverse():返回相反的字符序列
sb.reverse();
System.out.println("sb:" + sb);
}
五、String和StringBuilder相互转换
StringBuilder转换String:
public String toString() :通过StringBuilder类中的 toString() 就可以实现把 StringBuilder 转换为 String
String转换StringBuilder:
public StringBuilder(String s) :通过StringBuilder的构造方法就可以实现把 String 转换为 StringBuilder