StringBuilder概述
StringBuilder又称为可变字符序列,它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。即它是一个容器,容器中可以装很多字符串。并且能够对其中的字符串进行各种操作。它的内部拥有一个数组用来存放字符串内容,进行字符串拼接时,直接在数组中加入新内容。StringBuilder会自动维护数组的扩容,(默认16字符空间,超过自动扩充)。
常用构造方法:
- public StringBuilder():构造一个空的StringBuilder容器。
- public StringBuilder(String str):构造一个StringBuilder容器,并将字符串添加进去。
StringBuilder常用的方法有2个:
- public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。
- public String toString():将当前StringBuilder对象转换为String对象。
package demo04; public class StringBuilderTest { public static void main(String[] args) { StringBuilder sb1 = new StringBuilder(); System.out.println(sb1); // (空白) // 使用带参构造 StringBuilder builder = new StringBuilder("adasda"); System.out.println(builder); //adasda //public StringBuilder append(任意类型) // 可以添加 任何类型 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);//builder:adasdahelloworldtrue100helloworldtrue100 //通过toString方法,StringBuilder对象将会转换为不可变的String对象 String string = builder.toString(); System.out.println(string);//adasdahelloworldtrue100helloworldtrue100 } }