二者区别,简而言之,在于StringBuffer内部实现了线程同步,而StringBuilder没有。
二者均继承自AbstractStringBuilder。
JDK源码中可以看得更清楚些。
=============================
从源码中可以看出,子类AbstractStringBuilder已经实现了所有的操作,String...
分类:
其他好文 时间:
2014-06-05 06:47:58
阅读次数:
220
由于前面学习了StringBuffer和StringBuilder的父类AbstractStringBuilder,他们俩的很多方法都是直接super了父类的,也为了较好的比较StringBuffer和StringBuilder,所以把二者放在同一博文中。
一.StringBuffer
1.静态类,不能被继承,实现了Serializable和CharSequence接口。
public fi...
分类:
其他好文 时间:
2014-06-05 04:37:39
阅读次数:
254
表示可变字符字符串。无法继承此类。此类表示值为可变字符序列的类似字符串的对象。之所以说值是可变的,是因为在通过追加、移除、替换或插入字符而创建它后可以对它进行修改。有关比较,请参见
String 类。大多数修改此类的实例的方法都返回对同一实例的引用。由于返回的是对实例的引用,因此可以调用该引用的方法...
分类:
其他好文 时间:
2014-06-04 16:16:44
阅读次数:
220
String,StringBuffer和StringBuilder的异同
String,StringBuffer和StringBuilder的的源码已经在本博客的JDK源码学习系列中有了详细的介绍:
String 源码: http://blog.csdn.net/sheepmu/article/details/23303837
StringBuffer 和StringBuil...
分类:
其他好文 时间:
2014-06-03 05:45:58
阅读次数:
211
String、StringBuilder和StringBuffer哪个更优?String和StringBuilder:StringBuilder是可变的,也就是说用StringBuilder创建的字符串你可以随时改变它。StringBuilder和StringBuffer:StringBuffer是...
分类:
编程语言 时间:
2014-05-31 20:24:35
阅读次数:
236
.Net
4.0重构了StringBuilder的实现,采用了新的数据存储方式,不仅在效率上有大的提高,并且彻底避免了中间处理过程出现临时String对象进入LOH大对象堆的情况。本文对此进行分析。回顾.Net
2.0的StringBuilder实现Reflector查看StringBuilder的...
分类:
Web程序 时间:
2014-05-30 18:25:35
阅读次数:
445
关于“+”运算符对字符串的连接,不同的平台在实现上可能会略有不同。1、 Oracle
JDK1.7当使用“+”对字符串进行连接时,会创建一个临时的StringBuilder对象,该对象调用append方法负责字符串的连接操作,然后再调用StringBuilder类的toString方法转换成Stri...
分类:
其他好文 时间:
2014-05-30 18:13:21
阅读次数:
265
备忘:1.C函数参数为字符串char*。如果是入参,对应C#中string或StringBuilder;如果是出参对应C#中StringBuider;2.C函数参数为结构体指针,需在C#中对应定义结构体。如果是入参,C#中可为myfunction(MyStruct
mystruct)或myfunct...
分类:
其他好文 时间:
2014-05-26 10:06:56
阅读次数:
158
(1)String构建的对象不能改变,每次对String进行操作时,如两个String相加,需要新建一个String对象,然后容纳最终的结果。
而StringBuilder与StringBuffer构建的对象可以随时在修改其内容,而无需生成新的对象。一般新建一个对象是会生成16个字节的空间,之后根据需要再增加空间。
由于一般新构建一个对象涉及分配内存空间分配、无引用对象过多时的垃圾回收等,因此,对于操作频繁的字符串需使用StringBuilder或StringBuffer...
分类:
其他好文 时间:
2014-05-25 18:17:57
阅读次数:
225
如果可变字符串操作较多的话,用STRINGBUILDER显然优势得多。public class
HelloJava { public static void main(String[] args) { // TODO Auto-generated
method stub ...
分类:
编程语言 时间:
2014-05-24 09:00:10
阅读次数:
328