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

相关推荐
I_Jln9 分钟前
CountDownLatch:让多线程同步如此简单
java
John_Rey9 分钟前
Rust底层深度探究:自定义分配器(Allocators)——控制内存分配的精妙艺术
开发语言·后端·rust
虎子_layor9 分钟前
轻量级哈希扰动工具:Hashids,快速上手
java·spring
逻极10 分钟前
VS Code之Java 开发完全指南:从环境搭建到实战优化
java·开发语言
Moe48814 分钟前
JDK动态代理和CGLIB动态代理源码解析
java·后端
月月玩代码14 分钟前
SLF4J,简单门面Java日志框架
java·开发语言
虎子_layor16 分钟前
号段模式(分布式ID)上手指南:从原理到实战
java·后端
lkbhua莱克瓦2417 分钟前
Java基础——集合进阶用到的数据结构知识点3
java·数据结构·github·平衡二叉树·avl
moeyui70519 分钟前
Python文件编码读取和处理整理知识点
开发语言·前端·python
烽学长21 分钟前
(附源码)基于Spring boot的校园志愿服务管理系统的设计与实现
java·spring boot·后端