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

相关推荐
后端AI实验室14 分钟前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai
程序员清风2 小时前
小红书二面:Spring Boot的单例模式是如何实现的?
java·后端·面试
belhomme2 小时前
(面试题)Redis实现 IP 维度滑动窗口限流实践
java·面试
Be_Better2 小时前
学会与虚拟机对话---ASM
java
开源之眼4 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
Maori3165 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
用户908324602736 小时前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋6 小时前
DecimalFormat 与 BigDecimal
java·后端
beata6 小时前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端
IT探险家6 小时前
你的第一个 Java 程序就翻车?HelloWorld 的 8 个隐藏陷阱
java