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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© laoyang 黑马帝   /  2011-11-1 11:33  /  1671 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

stringbuffer和stringbuilder是我们经常用到的,那他们之间到底有什么区别呢?

8 个回复

倒序浏览
StringBuffer jdk 1.0开始,是线程安全的,所以效率低
StringBuilder jdk 1.5开始,设计是就是用来替换StringBuffer的,它不是线程同步的,效率高些
建议优先采用StringBuilder,因为在大多数实现中,它比StringBuffer 要快,如果需要线程同步,则建议使用 StringBuffer

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

回复 使用道具 举报
单线程时,StringBuilder的效率更高,多线程时,StringBuffer更安全。
回复 使用道具 举报
基本相同,当有线程安全时用StringBuffer()他是线程安全的,但是正因为这样在不涉及到线程安全时,他也会去检查同步锁,因此效率就低,所以就用StringBuilder替换,提高效率
回复 使用道具 举报
涨了知识
回复 使用道具 举报
StringBuffer可改变的Unicode字符序列,允许并发操作,是线程安全的
StringBuilder:可改变的Unicode字符序列操作同StringBuffer,只是不支持并发操作,非线程安全的
不考虑线程安全前提下,StringBuild性能最高,StringBuffer次之,String比较差
回复 使用道具 举报
白倩 黑马帝 2011-11-1 12:14:20
7#
StringBuffer是线程安全的,效率低,StringBuilder是jdk1.5新特性,是非线程安全的,但效率高!
回复 使用道具 举报
陆华山 黑马帝 2011-11-1 12:26:17
8#
想说的都被你们说了 这个小知识点 ,应用的时候根据实际情况而定,需求为 根本
回复 使用道具 举报
杨玉揆 黑马帝 2011-11-1 15:09:36
9#
能不能有一个折中的类能 又有线程安全 速度又快的呢?????
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马