java 中的StringBuilder类

介绍

 StringBuilder 构造器

StringBuilder常用方法 

使用

小案例


介绍

  • StringBuilder是一个可变的字符串的操作类,我们可以把它看成是一个对象容器。
  • 使用StringBuilder的核心作用:操作字符串的性能比String要更高(如拼接、修改等)。

 StringBuilder 构造器

名称

说明

public StringBuilder()

创建一个空白的可变的字符串对象,不包含任何内容

public StringBuilder(String str)

创建一个指定字符串内容的可变字符串对象

StringBuilder常用方法 

方法名称

说明

public StringBuilder append(任意类型)

添加数据并返回StringBuilder对象本身

public StringBuilder reverse()

将对象的内容反转

public int length()

返回对象内容长度

public String toString()

通过toString()就可以实现把StringBuilder转换为String

使用

即便是如何操作最终还是会恢复为String类型

append(任意类型):拼接对象

public class Dome {
    public static void main(String[] args) {
        StringBuilder s = new StringBuilder();
        s.append("A"); //字符串拼接到s对象中
        System.out.println(s); //将会输出A 而不是输出对象地址
                                //因为在StringBuilder已经重写了toString方法
    }
}

官方的append源码:

//链式编程
        StringBuilder a = new StringBuilder();
        a.append(1).append(2).append(3); //return返回对象继续拼接
        System.out.println(a); //此时返回的对象就是123

reverse():反转对象

StringBuilder a = new StringBuilder("国中你爱我");
        a.reverse(); //将对象反转
        System.out.println(a); //此时将输出”我爱你中国“

length():返回对象长度

        StringBuilder a = new StringBuilder("我爱你中国");
        System.out.println(a.length());//将输出对象长度 "我爱你中国"将返回5

 toString()

通过toString()就可以实现把StringBuilder转换为String

小案例

通过案例来熟悉使用StringBuilder类

利用StringBuilder设计一个方法用于输出任意整型数组的内容,要求输出成如下格式:

 “该数组内容为:”[1, 2, 3, 4, 5]“

思路:

  • 定义一个方法,要求该方法能够接收数组,并输出数组内容。
  • 定义一个静态初始化的数组,调用该方法,并传入该数组。

public class Dome {
    public static void main(String[] args) {
    //定义一个数组
        int[] a1 = {1,2,3,4,5};
        System.out.println(toString(a1));

        int[] a2 = null;
        System.out.println(toString(a2));

    }
    //定义一个方法,要求该方法能够接收数组
    public static String toString(int[] a){
        if (a != null){ //判断不为空
            //拼接内容
            StringBuilder s = new StringBuilder("[");
            for (int i = 0; i < a.length; i++) {
                s.append(a[i]).append(i == a.length-1 ? "":",");//链式编程拼接内容
            }
            s.append("]");
            return s.toString(); //将内容变为String类型 并返回

        }else {
            return null;
        }
    }
}

执行结果:

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
Java的StringBuffer和StringBuilder是用于字符串操作的可变字符序列。它们都具有似的功能,但在某些方面有所不同。StringBuffer是线程安全的,适用于多线程环境下的字符串拼接和修改操作。而StringBuilder是非线程安全的,适用于单线程环境下的字符串操作,它的性能相对较高。 StringBuffer和StringBuilder都提供了似的方法,包括创建、追加、插入、删除、替换、反转等操作。可以使用append()方法在字符串末尾追加内容,使用insert()方法在指定位置插入内容,使用delete()方法删除指定位置的字符,使用replace()方法替换指定范围内的字符,使用reverse()方法反转字符串等。此外,它们还支持toString()方法将可变字符序列转换为字符串,以及length()方法获取字符序列的长度等常见操作。 在使用StringBuffer和StringBuilder时,需要根据实际情况选择合适的。如果在多线程环境下进行字符串操作,安全性是首要考虑因素,可以使用StringBuffer。如果在单线程环境下进行字符串操作,并且对性能有较高要求,可以使用StringBuilder。 总之,Java的StringBuffer和StringBuilder提供了灵活和高效的字符串操作方法,可以根据需要选择合适的来处理字符串。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Java StringBuffer和StringBuilder](https://blog.csdn.net/sheng0113/article/details/124081818)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [面试题java StringBuffer和StringBuilder常见操作和用法](https://download.csdn.net/download/qq_43797491/87906515)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

open_test01

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值