字符串缓冲区 ----- StringBuilder类

本文详细介绍了StringBuilder类的使用方法,包括构造方法、成员方法等,并通过示例展示了如何利用StringBuilder进行字符串操作,如append方法的使用及StringBuilder与String之间的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

StringBuilder类

我们学习一个新的API都要:
看该类的解释说明和类的结构
学习该类的构造方法和成员方法

构造方法:

public StringBuilder():构造一个不带任何字符的字符串生成器,其初始容器为16个字符
public StringBuilder(String str):构造一个字符串生成器,并且初始化为指定字符串内容

public static void main(String[] args){
   //有参构造
    StringBuilder stringbuilder = new StringBuilder("abc");
   // 空参构造
   StringBuilder builder = new StringBuilder();
   System.out.println("空参构造的字符串缓冲区:"+ builder);
   
   StringBuilder builder1 = new StringBuilder();
   System.out.println("空参构造的字符串缓冲区:"+ builder1);
   //equals()
   boolean result = builder.equals(builder);
   System.out.println(result);
   boolean result = builder.equals(builder1);
   System.out.println(result1);
}

这里的equals方法用的是Object类里的equals方法,判断的是否为同一个对象。相同返回true,不同返回false
String类里的equals方法,是重写Object类的方法builderbuilder1虽然都为空,但是它们并不是同一个对象。当然会返回flase

常用方法

public StringBuilder append(....): 添加任意类型数据的字符串形式,并返回当前对象本身

public static void main(String[] args){
    // 构建一个字符串缓冲区
    StringBuilder bu = new StringBuilder();
    //使用append方法返回的是this
    StringBuilder bu2 = bu.append("abc");
    System.out.println(bu);
    System.out.println(bu2);
    System.out.println(bu == bu2);//true  == 比较的是地址,这时用equals方法
    
    //使用append方法再添加一些数据,无需接收返回值
    bu.append(1);
    bu.append(true);
    bu.append(3.14);
    bu.append('王');
    System.out.println(bu2);//bu2的内容值为:abc1true3.14王
    /*   
         如果一个方法返回值是自己本身,那么我们可以进行链式调用,或者进行链式编程
         如果一个方法返回值是对象,可以继续调用方法
    */
    bu.append("abc").append(1).append(true).append(3.14).append('王');
    System.out.println(bu);
    String str = "abc".toUpperCase().toLowerCase().toUpperCase().toLowerCase();//对象已经改变
    System.out.println(str);
    System.out.println(str == "abc");//false
}
StringBuilder和String进行相互转换

StringBuilder可以和String进行相互转换
String ---> StringBuilder的带参构造方法
StringBuilder(String str)构造一个字符串生成器,并初始化为指定的字符串内容
StringBuilder--->String 可以使用StringBuilder类中的toString()方法
public String toString(): 将当前的StringBuilder对象转换成String对象

public class StringBuilderDemo03{
   public static void main(String[] args){
   //String ---> StringBuilder
   String str = "Hello World";
   System.out.println("str: " + str);
   StringBuilder bu = new StringBuilder(str);
   //添加一些数据
   bu.append("---Java");
   System.out.println("bu:" + bu);
   
   //StringBuilder  --> String
   String s = bu.toString();
   System.out.println("s:" + s);
}

}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值