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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘晶 中级黑马   /  2014-5-5 20:50  /  1187 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

除了多线程操作,使用StringBuffer 安全;单线程操作使用StringBuilder效率高,StringBuilder线程不安全外,还有什么区别呢?
它们的方法都是一样,为了单线程使用就出现StringBuilder????

3 个回复

倒序浏览
StringBuilder效率高很多,多线程的话一般也是使用StringBuilder,自己加锁。而且单线程操作一个数据的情况很普遍,所以StringBuilder还是很有必要的。
回复 使用道具 举报
本帖最后由 菠萝包丶 于 2014-5-5 21:19 编辑

StringBuilder/StringBuffer类与String类的区别
StringBuilder/StringBuffer类是可以替代String类的另一种处理字符串的解决方案。一般来说,只要使用了字符串的地方,都可以使用StringBuilder/StringBuffer类。它们比String类更灵活、可以给一个StringBuilder或StringBuffer中添加、插入或追加新的内容,但是String对象一旦创建,它的值就固定了。
StringBuilder与StringBuffer类的区别:
除了StringBuffer中修改缓冲区的方法是同步的以外,StringBuilder类与StringBuffer类是很相似的,如果是多任务访问,就使用StringBuffer;而如果是单任务访问,使用StringBuilder会更有效。StringBuilder/StringBuffer类中的构造方法和其他方法几乎是完全一样的。

所以主要的使用方法和区别都跟楼主所说的那样,效率,安全问题的区别



评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 很给力!

查看全部评分

回复 使用道具 举报
菠萝包丶 发表于 2014-5-5 21:12
StringBuilder/StringBuffer类与String类的区别:
StringBuilder/StringBuffer类是可以替代String类的另一 ...

总结的很好  顶一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马