3. StringBuffer 线程安全的可变字符序列

本文详细介绍了StringBuffer类的各种构造方法及主要功能,包括添加、插入、删除、替换和反转等操作。此外还对比了StringBuffer与StringBuilder、String的区别,帮助读者理解它们在不同场景下的适用性。

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

  1. 构造方法:
    1. public StringBuffer() 初始容量为16个字符
    2. public StringBuffer(int capacity) 指定容量的 字符串缓冲区 对象
    3. public StringBuffer(String str) 指定字符串的 字符串缓冲区对象 容量为16+str.length()

  2. 功能:
    1. 添加 StringBuffer append(String str) 添加后返回对象本身
    2. 插入 StringBuffer insert(int offset,Object obj) 返回对象本身

    tips: 可以添加插入 任意数据类型
    将 Object 参数的字符串表示形式插入此字符序列中。 第二个参数将被转换成字符串,就好象使用了 String.valueOf 方法一样。然后,将所得字符串中的字符追加到此序列的制定索引位置。

offset 参数必须大于等于 0,且小于等于此序列的长度

    3. 删除       StringBuffer deleteCharAt(int index) 删除指定位置的 字符,并返回对象本身
                StringBuffer delete(int start,int end) 删除指定位置区间的   也是左闭又开,[start,end),删除头不删除尾
    4. 替换       StringBuffer replace(int start , int end ,String str)  从开始到结束的位置 用str替换
    5. 反转       StringBuffer reverse() 字符串反转
    6. 截取       String  substring(int start) 从指定位置到末尾   返回的是一个字符串
                        substring(int start, int end)  不包括结束位置

3. 转换成String
1. String toString()
2. String substring(int start)

  1. Tips:
    1. 基本数据类型的值传递,不改变其值(也包括String,常量池)
    2. 引用数据类型的值传递,改变其值(堆)

  2. StringBuffer,StringBuilder,String 面试题

    • String,StringBuffer,StringBuilder的区别?
    • StringBuffer和StringBuilder的区别?
    • StringBuffer是jdk1.0版本的,是线程安全的,效率低
    • StringBuilder是jdk1.5版本的,是线程不安全的,效率高

    • String和StringBuffer,StringBuilder的区别?

    • String是一个不可变的字符序列
    • StringBuffer,StringBuilder是可变的字符序列
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值