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

String,StringBuffer,StringBuilder的区别。

2015-03-08 16:22 225 查看
String与Stringbuffer的区别在于,string一旦定义其长度就不可变,不可对string对象进行append()等操作,而stringbuffer对象则是可变的。

StringBuider与StringBuffer的区别在于,stringbuffer是线程安全的,而stringbuilder则是非线程安全。所谓线程安全是指多线程对一个变量操作不会出现操作错误,比如线程1与线程2共享变量资源计数值tmp=1,若线程1使用了一个资源,此时资源计数应该减一,但线程1还没来得及修改资源计数,线程1的时间片就用完了,处理机被剥夺,tmp值未改变,此时线程2获得处理机,线程2使用资源,对资源计数修改。其实此时资源计数已经发生了错了,多线程操作发生了错误,这就是线程不安全。

所以当操作字符串不改变时用String,多线程用stringbuffer,单线程用stringbuilder.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: