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

相关推荐
island13141 分钟前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
云姜.3 分钟前
线程和进程的关系
java·linux·jvm
是码龙不是码农5 分钟前
支付防重复下单|5 种幂等性设计方案(从初级到架构级)
java·架构·幂等性
曹牧5 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
heartbeat..6 分钟前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
浅念-9 分钟前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
WeiXiao_Hyy9 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
User_芊芊君子15 分钟前
CANN010:PyASC Python编程接口—简化AI算子开发的Python框架
开发语言·人工智能·python
苏渡苇15 分钟前
优雅应对异常,从“try-catch堆砌”到“设计驱动”
java·后端·设计模式·学习方法·责任链模式
团子的二进制世界22 分钟前
G1垃圾收集器是如何工作的?
java·jvm·算法