StringBuffer类

博客介绍了Java中StringBuffer类,因字符串定义后长度不可变,+号拼串浪费空间,故提供该类。阐述其特点为线程安全的可变字符序列,介绍常用构造方法,还列举获取容量、长度,追加、插入、删除等方法,最后对比了StringBuffer和StringBuilder的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

特点:

  • 字符串一旦定义后,长度是不可变的。如果采用+号大量拼串,比较浪费空间。所以Java为了我们对字符拼接方便的进行操作,给我们提供了一个StringBuffer这个类。
  • 线程安全的可变字符序列。一个类似于String的字符串缓冲区,但不能修改,但通过某些方法可以改变该序列的长度和内容。

常用构造方法:

  • public StringBuffer()构造一个其中不带字符的字符串缓冲区,其初始容量为16个字符。
  • public StringBuffer(String str)构造一个字符串缓冲区,并将其内容初始化为指定的字符串内容。

方法:

  • 获取容量:
    public int capacity() 理论值
  • 获取长度:
    public int length() 实际值
  • 追加数据:
    public StringBuffer append(String str)可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身
    在这里插入图片描述
  • 插入:
    public StringBuffer insert(int offset,String str) 在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身
  • 删除:
    public StringBuffer deleteCharAt(int index)删除指定位置的字符,并返回本身
    public StringBuffer delete(int start,int end)删除从指定位置开始指定位置结束的内容,并返回本身
  • 替换:
    public StringBuffer replace(int start,int end,String str):从start开始到end用str替换
  • 截取:
    public String substring(int start): 从指定位置截取到末尾
    public String substring(int start,int end): 截取从指定位置开始到结束位置,包括开始位置,不包括结束位置
  • 索引:
    public int indexOf(String str) 返回第一次出现的指定子字符串在该字符串中的索引。
    public int indexOf(String str, int fromIndex) 从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。
  • 反转:
    public StringBuffer reverse()字符串反转

转换:

在这里插入图片描述

StringBuffer和StringBulider的区别:

StringBuffer是线程安全的效率低的
StringBuilder是线程不安全的效率高的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值