原理
- 概述:是字符串缓冲区,可以提供字符的操作效率。底层也是一个数组,但是没有被final修饰,长度可以变。
字符串是常量,一旦被创建后就不能更改
字符串的底层是一个被final修饰的数组,不能改变
private final byte[] value;
进行字符串连接运算,内存中会有多个字符串,占用空间多,效率低
-
构造方法
2.1 StringBuilder(),构造一个没有字符的字符串构建器,初始容量为16个字符。StringBuilder bu=new StringBuilder(); // 默认是空字符串
2.2 StringBuilder(String str),构造一个初始化为指定字符串内容的字符串构建器。
StringBuilder bu=new StringBuilder(); // bu=abc
-
成员方法
3.1 append(),添加字符串。StringBuilder bu=new StringBuilder(); // 可以实现链式编程 bu.append("abc").append(1); System.out.println(bu); // bu=abc1
3.2 toString(),返回表示此顺序中的数据的字符串。
StringBuilder bu=new StringBuilder(); bu.append("abc"); System.out.println(bu.append(1).append(true)); // abc1true System.out.println(bu.toString()); // abc1true
3.3 reverse(), 导致该字符序列被序列的相反代替。
String reName=new StringBuilder("hello").reverse().toString(); ystem.out.println(reName); // olleh