您的位置:首页 > 产品设计 > UI/UE

Java常用类:StringBuilder

2015-08-02 19:11 423 查看
一、介绍StringBuilder是一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)StringBuilder类可以用于在无需创建一个新的字符串对象情况下修改字符串。StringBuilder不是线程安全的,而StringBuffer是线程安全的。但StringBuilder在单线程中的性能比StringBuffer高。StringBuilder类来源于jdk1.5及以后的版本

常用方法:

1、append(); //追加到末尾

2、insert(int offset,String str) ; //在指定的索引处插入字符串

3、delete(int startIndex,int endIndex) //删除区域索引[startIndex,endIndex)的字符

4、reverse() //反转

StringBuilder的孪生兄弟StringBuffer,因为它们有一个相同的父类AbstractStringBuilder

二、源码解析
AbstractStringBuilder类是一个抽象类,有两个子类:StringBuffer和StringBuilder



AbstractStringBuilder类中有两个属性,分别是
char
value[];
//值、
int
count;
//长度。
所以,StringBuilder里是直接可以用的。

StringBuilder重载了很多append方法



查看源码发现,所有的append方法里最后都有一句return this,有什么作用呢?

return this的作用就是使调用成一个方法链,可以一直调用append。

三、总结
1、StringBuilder和StringBuffer都是继承了AbstractStringBuilder这个抽象类

2、StringBuilder同样是final修饰的,不可改变。跟String很多类似的地方

3、StringBuilder线程不安全,单线程效率高(比较常用)

4、StringBuilder创建对象个数问题:

来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: