StringBuilder可看作是一个容器,其内容是可以改变的
作用:提高字符串的操作效率
例如:
String s1 = new String("aaa");
String s2 = new String("bbb");
String s3 = new String("ccc");
String s = s1 + s2 + s3;以这种方式创建字符串s,在创建过程中由于有字符串的拼接,从左到右,s1与s2拼接过程中产生一个新的字符串,再与s3拼接再产生新字符串。在耗费时间的过程中也同样耗费着内存。而StringBuilder则是直接作用于字符串本身,并不会产生新的字符串,因此能够提高字符串的操作效率。
创建方法:
分为空参构造以及有参构造
1.无参创建
StringBuilder sb = new StringBuilder();2.创建时添加初始字符串
StringBuilder sb2 = new StringBuilder("abc");3.创建时添加初始长度
StringBuilder sb3 = new StringBuilder(10);
常用方法:
    
     1. public StringBuilder append(任意数据)  //添加数据,并返回对象本身
    
   
        sb.append(1);
        sb.append(2.0);
        sb.append(true);
        sb.append("abc");
        System.out.println(sb);//结果为12.0trueabc
    
     2. public StringBuilder reverse()   //反转容器中的内容
    
   
        sb.append(123);
        sb.reverse();
        System.out.println(sb);//结果为321
    
     3.public int length()    //返回长度(字符出现的个数)
    
   
        sb.append(123);
        sb.append("abc");
        System.out.println(sb.length());//结果为6
    
     4.public String toString()    //通过toString可以实现把StringBuilder转化为String
    
   
        sb.append(123);
        sb.append("abc");
        String str = sb.toString();
        System.out.println(str);//结果为123abc
    
     5.public StringBuilder insert(int index, 任意类型)   //将数据插入容器中的指定位置
    
   
        sb.append(123);
        sb.insert(1,4);
        System.out.println(sb);//结果为1423    
    
     6.public StringBuilder delete(int begin, int end);   //删除指定范围内的数据(左闭右开)
    
   
        sb.append(123456);
        sb.delete(1,3);
        System.out.println(sb);//结果为1456
    
     7.public StringBuilder deleteCharAt(int index)   // 删除指定位置的数据
    
   
        sb.append(123);
        sb.deleteCharAt(2);
        System.out.println(sb);//结果为12链式操作:
由于StringBuilder其中某些用法的返回类型仍为StringBuilder,(例如append,reverse等)
因此,可以进行循环调用,例如:
        StringBuilder sb = new StringBuilder();
        sb.append(123);
        sb.append("abc");
        sb.append(true);
        int n = sb.length();
        System.out.println(n);//结果为10
        StringBuilder sb1 = new StringBuilder();
        int n1 = sb1.append(123).append("abc").append(true).length();
        System.out.println(n1);//结果仍为10总结:
StringBuilder主要用于两种情况
    
     1.需要多次进行字符串拼接
    
   
    
     2.需要进行字符串反转
    
   
 
