Java中StringBuffer的简单学习

学习要点

1.StringBuffer类的主要特点
2.StringBuffer,StringBuilder,String的区别

[回顾要点]

String类的特点

1.string类有两种实例化对象方式:
- 直接赋值:只开辟一块堆内存空间,后续赋值如果相同,可以自动入池;
- 构造方法:使用new操作,开辟两块堆内存,不会自动入池,使用intern()手工入池;
2.任何一个字符串都是String的匿名对象
3.最重要的特征是:
字符串一旦声明则不可改变,可以改变的是String类对象的引用

String类存在一个问题,就是其内容不可改变。而StringBuffer内容是可以改变的。

StringBuffer

为了灵活改变String,Java里提供了—StringBuffer类(里面的内容可以修改)从Jdk1.0开始出现使用。

string对象用“+”来进行字符串的连接操作,而StringBuffer类里面必须使用append()方法进行追加
方法:
public StringBuffer append(数据类型 变量)

String和StringBuffer有相同的CharSequence接口,但这两个类却不能直接转换

String和StringBuffer转换方法

String->StringBuffer
1.利用StringBuffer类的构造方法
   public StringBuffer(String str)
2.利用append()方法
   public StringBuffer.append(string str)
StringBuffer->String
1.利用toString()方法进行转换
2.利用String类的构造方法
  public String(StringBuffer str)
**

常见的StringBuffer类库的方法

**
1.字符串反转 public StringBuffer reverse ()
2.字符串插入 (在指定的索引位置添加数据)
public StringBuffer insert(int offset,数据类型 变量)
3.删除部分数据 public StringBuffer delete(int start,int end)

从Jdk1.5增加了一个新的字符串操作类:StringBuilder类,这个类的定义结构与StringBuffer非常相似,几乎连方法也一样。
常见面试题
String,StringBuild,StringBuffer类的区别
1.String内容一旦声明则不可改变,而StringBuffer与StringBuilder声明的内容可以改变。
2.StringBuffer类中提供的方法都是同步方法,属于安全的线程操作,而StringBuilder属于非线程安全的操作。

在开发中,如果看到字符串的应用,无需思考,大部分采用String类,只有在需要频繁修改的时候才会考虑到StringBuffer或StringBuilder类操作。

**

总结:

**
String类依然是最常用的字符串描述类,而StringBuffer类由于出现较长且比较安全,所以比StringBuilder用的多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值