StringBuilder

不羁的心 提交于 2020-02-22 12:13:56

StringBuilder定义和作用

StringBuilder的作用:节省字符串拼接所制造的内存和占用的时间
每一次字符串拼接堆区中的常量区都会开辟一块新的地址和内存
StringBuilder是一个可变的字符串类,我们可以把它看作是一个容器,这里的可变指的是StringBuiler对象中的内容是可变的,它在进行拼接的时候是不会创建一个新的对象的。而String中的内容是不可变的。

StringBuilder的构造方法

public StringBuilder() 无参构造方法,可创建空白字符串对象
public StringBuilder(String str)带参构造方法,根据字符串内容,创建可变字符串对象
StringBuilder stb = new StringBuilder() 这个是创建对象的格式(创建对象的统一格式)

StringBuilder的添加和反转方法

通过append方法进行添加

StringBuilder stb = new StringBuilder();
sbb.append("sapere");
sbb.append("Aude");
//输出这个字符串的结果为 spaere Aude
//如果采用链式编程:
sbb.append("sapere"). sbb.append.("Aude")
//输出结果一样
//这个append方法返回的是对象本身,相当于返回的对象再调用方法

通过reverse进行字符串反转
stb.reverse();
//输出stb的结果为 eduA erepas

#### StringBuilder与String的相互转换 1.String转换成StringBuilder
public StringBuilder(String s);  //这个就是构造方法

2.StringBuilder转换成String

public String toString();
String s = stb.toString();
//此时stb被转换成了s

案例:将{1,2,3)通过一个方法输出为[3,2,1]

 public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        System.out.println(converse(arr));
    }

    public static String converse(int[] arr) {

        StringBuilder stb = new StringBuilder();
        stb.append("[");
        for (int i = arr.length - 1; i >= 0; i--) {
            if (i == 0) {
                stb.append(arr[i]); //整型自动转为字符串型
                break;
            }
            stb.append(arr[i]).append(",");
        }
        stb.append("]");
        return stb.toString();
    }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!