之前刚开始接触java语言的时候,经常会记忆一下java工具类的特性,但是,时间长了,如果不温习这些知识,这种知识点的对比,很快会忘记。思考过这个问题,发现还是理解不够深刻,或者说是印象不太深刻,我觉得jdk的源码是一个可以让人深刻的东西,一起来看一下吧,so easy~
1. 结论
StringBuilder和StringBuffer都试用于大量字符串的拼接过程,其效率都高于String类,唯一的区别在于,StringBuilder是一个线程不安全的操作类,StringBuffer是一个线程安全的操作类。
2. 源码
StringBuilder的Append方法:
@Override
public StringBuilder append(String str) {
super.append(str);
return this;
}
StringBuffer的Append方法:
@Override
public synchronized StringBuffer append(String str) {
toStringCache = null;
super.append(str);
return this;
}