首页 > 代码库 > String,StringBuffer和StringBuilder的异同
String,StringBuffer和StringBuilder的异同
String,StringBuffer和StringBuilder的异同
String,StringBuffer和StringBuilder的的源码已经在本博客的JDK源码学习系列中有了详细的介绍:
String 源码: http://blog.csdn.net/sheepmu/article/details/23303837
StringBuffer 和StringBuilder 源码: http://blog.csdn.net/sheepmu/article/details/27123541
相同点:1.三者都是final类,不能被继承。
不同点:1. String 是不可变类,而 StringBuffer和StringBuilder是可变的。
2.String 中的成员变量 value,siaze,count都是final修饰的,不可改变,而 StringBuffer和StringBuilder 同继承于 AbstractStringBuilder,成员变量没有被final修饰。
3.StringBuffer自从jdk1.0就有了,而StringBuilder是jdk1.5 才引入。
4.StringBuffer 是线程安全的,但是 慢。
5.StringBuilder是非线程安全的,但是 快。
6.少量数据拼接用String的“+”;大量数据多线程时用StringBuffer;大量数据单线程时用StringBuilder.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。