黑马程序员-第十二天( StringBuffer/StringBuilder)

本文详细介绍了StringBuffer和StringBuilder在Java中的使用方法,包括存储、删除、获取、修改及反转等操作,并对比了两者在线程安全上的差异。适用于希望了解这两种字符串容器特性的开发者。

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

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

一, StringBuffer是字符串缓冲区是一个容器。
1,存储
StringBuffer append(Object) :将指定数据作为参数添加到已有数据结尾处,返回添加后的对象。
StringBuffer insert(int index,数据):可以将数据插入到指定index位置。
2,删除
StringBuffer delete(int start,int end):删除指定位置的字符串包括头不包括尾。
StringBuffer deleteCharAt(int index):删除指定位置的字符。
清空缓冲区:
delete(0,sb.length());
3,获取
char charAt(int index);
int indexOf(String str);
int indexOf(String ,int)
int lastIndexOf(String);
int length();
String substring(int start,int end);返回字符串。
4,修改
StringBuffer repalce(int start,int end,String str):将字符串替换到指定的位置。不包括尾
void setCharAt(int index,char ch):替换某一位置的字符
5,反转
StringBuffer reverse();将字符串进行反转。
6,将缓冲区中指定的数据存储在指定的字符数组中
void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin);
7,缓冲区的三个特点:
·长度是可以变化的,
·可以操作多种类型
·最终会通过toString方法变成字符串。

二,在jdk1.5版本后出现了StringBuilder
StringBuffer是线程同步的。
StringBuilder是线程不同步的。
当在单线程时StringBuffer效率比较低。需要判断锁。

多线程用StringBuffer
单线程用StringBuilder(以后开发多用)

注:java的升级:提高效率,简化抒写,提高安全性

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值