java毕向东听课笔记19(字符串3)

StringBuffer 是一个容器(字符串缓冲区),而且长度是可以变化的,可以一次操作多个数据类型,最后可以通过toString方法变成字符串,可以对字符串进行CURD(Create Update Read Delete)。

1.添加

StringBuffer append();将制定数据作为参数添加到已有数据结尾处

StringBuffer insert(index,数据):可以将数据插入到指定index位置

2.删除

StringBuffer delete(start,end):删除缓冲区中的数据,包含start,不包含end

StringBuffer deleteCharAt(index):删除指定位置的字符。

3.获取

和String类的方法基本相同

4..修改

StringBuffer replace(start,end,string);

void setCharAt(int index,char ch);

5.反转

StringBuffer reverse();

6. void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)将缓冲区中的指定数据存放到指定数组中

class StringBufferDemo{
	public static void main(String[] args){
		StringBuffer sb = new StringBuffer("abcdefg");
		char[] chs = new char[4];
		sb.getChars(1,3,chs,1);//将sb中角标1~3(包含1不包含3)的字符存到chs数组中,并且从数组的1角标开始存
		for(int x=0;x<chs.length;x++)
			sop("chs["+x+"]="+chs[x]);
	}
	
	public static void sop(String str){
		System.out.println(str);
	}
}


-------------------------------------------------------------

从JDK1.5之后出现StringBuilder,和StringBuffer的不同之处在于


StringBuffer 是线程同步

StringBuilder 是线程不同步,也就意味着StringBuffer的安全性更高,可是如果是单线程的程序,StringBuilder的快捷更合适。


开发建议用StringBuilder,因为同步被Lock替代了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值