Java StringBuilder 原理和相关用法

为什么要用StringBuilder以及它的原理

String 底层是一个用 final 修饰的数组, 一旦创建不可改变, 字符串拼接的时候空间占用多, 效率低
在这里插入图片描述
StringBuilder 继承自 AbstractStringBuilder, 是一个可变的数组
在这里插入图片描述

在这里插入图片描述

构造方法

//空参数构造方法
StringBuilder bu1 = new StringBuilder();

//带字符串的构造方法
StringBuilder bu2 = new StringBuilder("abc");

常用方法

在 StringBuilder 上的主要操作是 appendinsert 方法, append 方法始终将这些字符添加到生成器的末端;而 insert 方法则在指定的点添加字符。

将 StringBuilder 的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用 StringBuffer。

append 添加

StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("a").append("b");
System.out.println(stringBuilder); //ab

insert 插入

stringBuilder.insert(1, "c");
System.out.println(stringBuilder);//acb

在 1 的位置插入 “c”

reverse 翻转

stringBuilder.reverse();
System.out.println(stringBuilder); //bca

replace 替换

stringBuilder.replace(1,2,"替换");
System.out.println(stringBuilder); //b替换a

toString

返回此序列中数据的字符串表示形式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值