A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

    这个还一直弄不明白

9 个回复

正序浏览
Buffer和Bulider

先从共同点说起吧,都是字符串缓冲区,用法也都是一样的,没有什么不同.....

不同点就在于,Bulider是线程不安全的,运行效率高,Buffer是线程安全的,效率低一些

目前只学到了这里,也当作给自己巩固吧~{:2_32:}
回复 使用道具 举报
善良的死神达乐 发表于 2016-6-24 15:43
方法一模一样,就只是StringBuffer是线程安全的。。。另一个是线程不安全的。。。用法都是一样的。。。 ...

和线程无关。。。。不好意思,说叉了。。。。
回复 使用道具 举报
方法一模一样,就只是StringBuffer是线程安全的。。。另一个是线程不安全的。。。用法都是一样的。。。
回复 使用道具 举报
1316582449 发表于 2016-6-24 14:07
StringBuffer属于线程安全,相对为重量级
StringBuilder属于非线程安全,相对为轻量级

解释的很好,学习了,也赞一个

点评

  发表于 2016-6-24 20:08
回复 使用道具 举报
StringBuffer属于线程安全,相对为重量级
StringBuilder属于非线程安全,相对为轻量级

线程安全的概念: 网络编程中许多线程可能会同时运行一段代码。当每次运行结果和单独线程运行的结果是一样的,叫做线程安全。 为了达到线程安全的目的在一定程度上会降低程序的性能。所以在单线程中,StringBuilder的性能要比StringBuffer高。多线程为了线程安全需要采用StingBuffer。其实在线程不考虑的情况下,要是程序对性能的要求不高,太在意这两者的区别就没有什么意义(个人理解)。
回复 使用道具 举报
都是缓冲区
回复 使用道具 举报
Buffer线程安全效率低
Builder线程不安全效率高
回复 使用道具 举报
好像是一个不安全 一个安全吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马