黑马程序员技术交流社区

标题: 关于Stringbuilder和StringBuffer的区别 [打印本页]

作者: 途遥子若    时间: 2013-12-29 11:05
标题: 关于Stringbuilder和StringBuffer的区别
在IO流中这两个类有哪些区别?可以举例不?(云8)
作者: 闫志军    时间: 2013-12-29 11:39
stringbuild 是线程非同步的。stringbuffer 是线程同步的。
作者: 不愿一人    时间: 2013-12-29 11:53
首先StringBuild线程不安全。但单线程中效率比StringBuffergao ,
他支持所有的StringBuffer相同的操作,但由于同步,所以执行速度要更快。
StringBuffer是线程安全的,在多线程程序使用中,StringBuffer在添加就不能删除
在删除时就不能添加,所以此特性特别适合应用于线程同步,但同时如果是在
但程序中调用StringBuffer的方法时都回去判断同步的锁,所以效率就降低了。

在具体的应用上:
如果要在类里面定义成员变量,并且这个类的实例对象会在多线程环境下使用,
那么最好用StringBuffe,如果没有什么特别的要求还是用StringBuild,毕竟他的
执行效率会快一点,还有就是这两个类都是可变的字符序列,我们主要应用的是两者中
都包含的append和insert方法,两者都是用来操作大量数据的。如果是操作少量的数据,
个人觉得 可以直接用String




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2