StringBuilder概述
查阅java.lang.StringBuilder的API,StringBuilder又称为可变字符序列,它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。原来StringBuilder是个字符串的缓冲区,即它是一个容器,容器中可以装很多字符串。并且能够对其中的字符串进行各种操作。它的内部拥有一个数组用来存放字符串内容,进行字符串拼接时,直接在数组中加入新内容。StringBuilder会自动维护数组的扩容。
构造方法
常用构造方法有2个:
- public StringBuilder():构造一个空的StringBuilder容器。
- public StringBuilder(String str):构造一个StringBuilder容器,并将字符串添加进去。
代码举例
package com.itheima.demo06StringBuilder;/* java.lang.StringBuilder类:字符串缓冲区,可以提高字符串的效率 构造方法: StringBuilder() 构造一个不带任何字符的字符串生成器,其初始容量为 16 个字符。 StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。 */public class Demo01StringBuilder { public static void main(String[] args) { //空参数构造方法 StringBuilder bu1 = new StringBuilder(); System.out.println("bu1:"+bu1);//bu1:"" //带字符串的构造方法 StringBuilder bu2 = new StringBuilder("abc"); System.out.println("bu2:"+bu2);//bu2:abc }}
tringBuilder常用的方法有2个:
- public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。append方法具有多种重载形式,可以接收任意类型的参数。任何数据作为参数都会将对应的字符串内容添加到StringBuilder中。
- public String toString():将当前StringBuilder对象转换为String对象。
StringBuilder和String可以相互转换:
- String->StringBuilder:可以使用StringBuilder的构造方法 : StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。
- StringBuilder->String:可以使用StringBuilder中的toString方法 :public String toString():将当前StringBuilder对象转换为String对象。
代码举例
package com.itheima.demo06StringBuilder;public class Demo03StringBuilder { public static void main(String[] args) { //String->StringBuilder String str = "hello"; System.out.println("str:"+str); StringBuilder bu = new StringBuilder(str); //往StringBuilder中添加数据 bu.append("world"); System.out.println("bu:"+bu); //StringBuilder->String String s = bu.toString(); System.out.println("s:"+s); }}
执行结果