[Java基础]String,StringBuffer,StringBuilder的区别
String 和 StringBuffer/StringBuilder应该分开来看
java.lang.String源码中的注释说明
![]()
java.lang.StringBuffer源码中的注释说明
![]()
java.lang.StringBuilder源码中的注释说明
![StringBuilder源码未显示]()
总结:
1.String类 JDK1.0引入,最早的字符串变量类型,只要初始化后就不允许修改其指向的内存块;
2.StringBuffer类 JDK1.0引入,线程安全(方法被synchronized修饰),但是比较慢,官方建议使用StringBuilder;
3.StringBuilder类 JDK1.5引入,线程不安全,但是速度较快,官方建议使用;
4.StringBuffer和StringBuilder底层都为数组;