javaSE - StringBuffer 和 StringBuilder(字符串拼接)

本文介绍了Java中的String、StringBuffer和StringBuilder的特性与区别。String是不可变的,适合字符串常量;StringBuilder与StringBuffer用于字符串拼接,其中StringBuilder是非线程安全的,适用于单线程环境,而StringBuffer是线程安全的。文章通过实例演示了它们的使用,包括append方法和转换方式,并讨论了面试中常见的相关问题。
摘要由CSDN通过智能技术生成

前言

StringBuffer 、 StringBuilder、 String 是三种数据类型
首先来回顾下String类的特点:

  • 任何的字符串常量都是String对象,而且String的常量一旦声明不可改变,如果改变对象内容,改变的是其引用的指向而已。
  • 通常来讲String的操作比较简单,但是由于String的不可更改特性,为了方便字符串的修改,提供StringBuffer和StringBuilder类。
  • StringBuffer 和 StringBuilder 大部分功能是相同的,主要介绍 StringBuffer
  • 在String中使用"+"来进行字符串连接,但是这个操作在StringBuffer类中需要更改为append()方法

一、观察String 对象在进行字符串拼接

public static void main(String[] args) {
   
        String str = "acbcd";
        str = str + "123";
        System.out.println(str);
    }

在这里插入图片描述

所以String类型在进行字符串拼接的时候,会优化成StringBuilder对象,然后在来进行拼接,拼接完之后在调用StringBuilder类的ToString方法,返回一个新的String对象,这时str引用的就是StringBUilder返回的对象

二、观察StringBuilder的使用

public static void main(String[] args) {
   
        StringBuilder sb = new StringBuilder("abcde");
        System.out.println(sb)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Später321

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

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

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

打赏作者

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

抵扣说明:

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

余额充值