Java StringBuilder方法

Java StringBuilder方法

String中字符串的内容是不可变的(因为字符串底层是一个用final修饰的数组),变的是栈中引用对象的地址值,这就导致我们重新给字符串赋值时,就会在内存中再产生一个新的字符串,导致了内存的浪费
在API中对String类有这样的描述:字符串是常量,它们的值在创建后不能被更改.
为了解决这个问题java引入了StringBuilder数组
什么是StringBuilder?
它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。
它的内部拥有一个数组用来存放字符串内容,进行字符串拼接时,直接在数组中加入新内容。StringBuilder会自动维护数组的扩容
构造方法
public StringBuilder():构造一个空的StringBuilder容器。
public StringBuilder(String str):构造一个StringBuilder容器,并将字符串添加进去
常用方法
public StringBuilder append(…):添加任意类型数据的字符串形式,并返回当前对象自身。
public String toString():将当前StringBuilder对象转换为String对象。
示例

public class Main {
    public static void main(String[] args) {
        StringBuilder stringBuilder = new StringBuilder();
        //添加字符串到末尾
        stringBuilder.append("abc");
        System.out.println(stringBuilder);
        //转换为字符串
        String string = stringBuilder.toString();
        System.out.println(stringBuilder);
    }
}

结果
在这里插入图片描述链式编程

public class Main {
    public static void main(String[] args) {
        StringBuilder stringBuilder = new StringBuilder();
        //添加字符串到末尾
        stringBuilder.append("abc");
        System.out.println(stringBuilder);
        //转换为字符串
        String string = stringBuilder.toString();
        System.out.println(stringBuilder);
        String string1 = stringBuilder.append("abc").append("def").toString();
        System.out.println(string1);
    }
}

链式编程
一次性调用append方法与tostring方法
以上就是StringBuilder方法的基本内容,如有错误还请各位指出,喜欢我的可以关注我哦
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/pjh88/article/details/107213293