StringBuilder类的append 链式方程

1.概述:

查阅 java.lang.StringBuilder APIStringBuilder又称为可变字符序列,它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。

原来StringBuilder是个字符串的缓冲区,即它是一个容器,容器中可以装很多字符串。并且能够对其中的字符串进 行各种操作。

它的内部拥有一个数组用来存放字符串内容,进行字符串拼接时,直接在数组中加入新内容。StringBuilder会自动 维护数组的扩容。原理如下图所示:(默认16字符空间,超过自动扩充)

2.构造方法

根据StringBuilder的API文档,常用构造方法有2个:
public StringBuilder() :构造一个空的StringBuilder容器。
public StringBuilder(String str) :构造一个StringBuilder容器,并将字符串添加进去。
public class StringBuilderDemo {
    public static void main(String[] args) {
        StringBuilder sb1 = new StringBuilder();
        System.out.println(sb1);//空白
        //使用带参数构造
        StringBuilder sb2 = new StringBuilder("itcast");
        System.out.println(sb2);//itcast
    }
}

3.常用方法

StringBuilder常用的方法有2个:

public StringBuilder append(...) :添加任意类型数据的字符串形式,并返回当前对象自身。 
public String toString() :将当前StringBuilder对象转换为String对象。

append方法

append 方法具有多种重载形式,可以接收任意类型的参数。任何数据作为参数都会将对应的字符串内容添加到
StringBuilder 中。例如:
public class appendDemo {
    public static void main(String[] args) {
        //创建对象
        StringBuilder builder = new StringBuilder();
        //public StringBuilder appendDemo(任意类型)
        StringBuilder builder2 = builder.append("hello");
        //对比一下
        System.out.println("builder:" + builder);
        System.out.println("builder2:" + builder2);
        System.out.println(builder == builder2); //true
        // 可以添加 任何类型
        builder.append("hello");
        builder.append("world");
        builder.append(true);
        builder.append(100);
        // 在我们开发中,会遇到调用一个方法后,返回一个对象的情况。然后使用返回的对象继续调用方法。
        //这种时候,我们就可以把代码现在一起,如append方法一样,代码如下
        // 链式编程
        builder.append("hello").append("world").append(true).append(100);
        System.out.println("builder:" + builder);
    }
}
备注: StringBuilder 已经覆盖重写了 Object 当中的 toString 方法
 
 
 
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页