StringBuilder和StringBuffer

StringBuilder

StringBuilder代表可变字符串对象,相当于一个容器,里面装的字符串是可以改变的,StringBuilder就是用来操作字符串的

好处: StringBuilder比String更适合做字符串的修改操作,效率会更高,代码也会更简洁

常用API

构造器 说明
public StringBuilder() 创建一个空白的可变的字符串对象,不包含任何内容
public StringBuilder(String str) 创建一个指定字符串内容的可变字符串对象
方法名称 说明
public StringBuilder append(任意类型) 添加数据并返回StringBuilder对象本身
public StringBuilder reverse() 将对象的内容反转
public int length() 返回对象内容长度
public String toString() 通过toString()就可以实现把StringBuilder转换为String

案例演示

js 复制代码
public class StringBuilderTest1 {
    public static void main(String[] args) {
        StringBuilder s = new StringBuilder("此时相望不相闻");

        //append()拼接内容,支持任意类型数据
        s = s.append(",愿逐月华流照君。");
        System.out.println(s);  //此时相望不相闻,愿逐月华流照君。

        System.out.println(s.reverse());    //。君照流华月逐愿,闻相不望相时此
        System.out.println(s);      //。君照流华月逐愿,闻相不望相时此
        s.reverse();

        System.out.println(s.length()); //16
        System.out.println(s.getClass());   //class java.lang.StringBuilder
        System.out.println(s.toString().getClass());    //class java.lang.String
        //toString()方法将StringBuilder对象转换为String类型
    }
}

StringBuffer和StringBuilder是一模一样的,可以用StringBuilder的就一定可以用StringBuffer

但StringBuilder是线程不安全的,StringBuffer是线程安全的

相关推荐
Bdygsl15 分钟前
前端开发:JavaScript(6)—— 对象
开发语言·javascript·ecmascript
babytiger1 小时前
我的c#用到Newtonsoft.Json.dll,Fleck.dll这两个dll能否打到一个exe 中,而不是一起随着exe拷贝
开发语言·c#·json
How_doyou_do1 小时前
睿抗开发者大赛国赛-24
开发语言·python
用户84913717547161 小时前
JDK 17 实战系列(第4期):安全性与稳定性增强详解
java·后端·性能优化
自由的疯1 小时前
java程序员怎么从Python小白变成Python大拿?(三)
java·后端·trae
用户84913717547161 小时前
JustAuth实战系列(第4期):模板方法模式实战 - AuthDefaultRequest源码剖析
java·后端·架构
weixin_411191842 小时前
安卓Handler和Looper的学习记录
android·java
创创ccccc2 小时前
十三、抽象队列同步器AQS
java·并发编程·juc·aqs
BrownMox2 小时前
CORS 跨域问题 Next.js 跨域问题放通
开发语言·javascript·ecmascript
鼠鼠我捏,要死了捏2 小时前
生产环境中JVM内存泄漏定位与解决实践
java·jvm·内存泄漏