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是线程安全的

相关推荐
南 阳11 小时前
Python从入门到精通day66
开发语言·python
好家伙VCC12 小时前
【无标题】
java
十八旬12 小时前
快速安装ClaudeCode完整指南
开发语言·windows·python·claude
前进的李工12 小时前
EXPLAIN输出格式全解析:JSON、TREE与可视化
开发语言·数据库·mysql·性能优化·explain
小碗羊肉12 小时前
【JavaWeb | 第十一篇】文件上传(本地&阿里云OSS)
java·阿里云·servlet
吾疾唯君医12 小时前
Java SpringBoot集成积木报表实操记录
java·spring boot·spring·导出excel·积木报表·数据文件下载
Byron Loong13 小时前
【c++】为什么有了dll和.h,还需要包含lib
java·开发语言·c++
独隅13 小时前
CodeX + Visual Studio Code 联动的全面指南
开发语言·php
坚果派·白晓明13 小时前
【鸿蒙PC三方库移植适配框架解读系列】第一篇:Lycium C/C++ 三方库适配 — 概述与环境配置
c语言·开发语言·c++·harmonyos·开源鸿蒙·三方库·c/c++三方库
hexu_blog13 小时前
vue+java实现图片批量压缩
java·前端·vue.js