StringBuilder
StringBuilder是一个可变字符串,我们可以把它看成是一个容器
- 作用: 提高字符串的操作效率,速度比String快很多.
方法名 | 说明 |
---|---|
public StringBuilder() | 创建一个空白字符串对象, 不含有任何内容 |
public StringBuilder(String str) | 根据字符串的内容, 来创建可变字符串对象 |
StringBuilder 的常用方法
方法名 | 说明 |
---|---|
public StringBuilder append(任意类型) | 添加数据,并返回对象本身 |
public String Builder reverse() | 返回相反的字符序列 |
public int length() | 返回长度(字符出现的个数) |
public String toString() | 通过toString()就可以实现把StringBuilder转换为String |
例:
public class Demo03 {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
sb.append(123);
sb.append("abc");
sb.append(true);
System.out.println(sb);
}
}
//输出结果为一个字符串: 123abctrue
StringBuilder是一个可变的字符串类,我们可以吧它看成是一个容器
例:
public class Demo03 {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
sb.append("蓝色");
System.out.println(sb);
sb.append("红色");
System.out.println(sb);
sb.append("绿色");
System.out.println(sb);
}
}
//输出结果为:
蓝色
蓝色红色
蓝色红色绿色
链式编程、反转、返回长度
public class Demo03 {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
//链式编程: 如果一个方法返回的是对象类型,对象就可以继续向下调用方法
sb.append("红色").append("蓝色").append("绿色");
System.out.println("反转前"+ sb);
sb.reverse();
System.out.println("反转后"+ sb);
System.out.println("sb中字符的个数为:"+sb.length());
String s = sb.toString();
System.out.println(s);
//虽然打印出来的内容一样,但是toString将类型从StringBuilder转换成了String类型
}
}
//输出结果:
反转前红色蓝色绿色
反转后色绿色蓝色红
sb中字符的个数为:6
StringBuilder 拼接字符串
public class Demo03 {
public static void main(String[] args) {
int[] arr = {1, 2, 3};
String s = arrtoString(arr);
System.out.println(s);
}
public static String arrtoString(int[] arr) {
StringBuilder sb = new StringBuilder("[");
for (int i = 0; i < arr.length; i++) {
if (i == arr.length - 1) {
sb.append(arr[i]).append("]");
} else {
sb.append(arr[i]).append(",");
}
}
return sb.toString();
}
}