StringBuilder

StringBuilder

String拼接操作内存设定如下图

在这里插入图片描述

StringBuilder是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是StringBuilder对象中的内容是可变的

String和StringBuilder区别

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

StringBuilder构造方法~~(见代码)~~

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

StringBuilder的添加和反转方法~~(见代码)~~

方法名说明
public StringBuilder append(任意类型)添加数据,并返回对象本身
public StringBuilder reverse()返回相反的字符序列

StringBuilder和String相互转换

  • 为什么要相互转换?

因为StringBuilder中有两个好用的方法append和revers,所以String对象想要调用就需要转换为StringBuilder,使用完以后需要转换回来。

StringBuilder转换为String

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

String转换为StringBuilder

public StringBuilder(str):通过构造方法就可以实现把String转换为StringBuilder

代码

		//创建一个空白可变字符串对象,不含有任何内容
        StringBuilder sb = new StringBuilder();
        System.out.println("sb:"+sb); //sb:
        System.out.println("sb.length():"+sb.length()); //sb.length():0

        //根据字符串的内容,来创建可变字符串对象
        StringBuilder sb2 = new StringBuilder("StringBuilder");
        System.out.println("sb2:"+sb2); //sb2:StringBuilder
        System.out.println("sb2.length():"+sb2.length()); //sb2.length():13

        //添加数据,并返回对象本身
        sb2.append(123);
        System.out.println(sb2); //StringBuilder123
        //链式编程
        sb.append(123).append(456).append(789);
        System.out.println(sb); //123456789

        //返回相反的字符序列
        sb2.reverse();
        System.out.println(sb2); //321redliuBgnirtS

        //通过toString()就可以实现把StringBuilder转换为String
        String str = sb2.toString();
        System.out.println(str); //321redliuBgnirtS

        //通过构造方法就可以实现把Stringr转换为StringBuilder
        StringBuilder sb3 = new StringBuilder(str);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值