JAVA学习之路之StringBuilder


StringBuilder概述

如果对字符串进行拼接操作,每次拼接,都会创建一个新的String对象,既耗时,又浪费内存空间,而这种操作又无法避免,我们可以通过Java提供的StringBuilder类来解决这个问题。
StringBuilder是一个可变得字符串类,我们可以把它看成是一个容器,这里的可变是指StringBuilder对象中的内容是可变的。

String和StringBuilder的区别

String:内容是不可变的
StringBuilder:内容是可变的

StringBuilder的构造方法

方法名说明
public StringBuilder()创建一个空白可变字符串对象,不含有任何内容
public StringBuilder(String str)根据字符串内容,来创建可变字符串对象

StringBuilder的添加和反转方法

项目Value
public StringBuilder append(任意类型)添加数据,并返回对象本身
public StringBuilder reverse()返回相反的字符序列

添加反转方法代码演示

public class StringBuilderDemo {
    public static void main(String[] args) {
        //创建对象
        StringBuilder s = new StringBuilder();
        //public StringBuilder append(任意类型):添加数据,并返回对象本身
        StringBuilder s1 = s.append("hello");
        System.out.println("s:"+s);
        System.out.println("s1:"+s1);
        System.out.println(s==s1);

        StringBuilder s2 = new StringBuilder();
        s2.append("hello");
        s2.append("world");
        System.out.println(s2);

        //链式编程  调用对象后,对象也能调用append方法
        StringBuilder s3 = new StringBuilder();
        s3.append("hello").append("world");

        //public StringBuilder reverse(),返回相反的字符序列
        s.reverse();
        s3.reverse();
        System.out.println("s:"+s);
        System.out.println("s3:"+s3);
    }
}
运行结果:

s:hello
s1:hello
true
helloworld
s:olleh
s3:dlrowolleh
可以理解为对一个对象的反复操作



StringBuilder和String的相互转换

原因:String无法直接调用append和reserve方法,需要互相转换来实现。
1.StringBuilder转换为String
public String toString():通过toString就可把StringBuilder转化为String
2.String转换为StringBuilder
public StringBuilder(String s):通过构造方法实现把String转换为StringBuilder

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值