1. 程式人生 > >StringBuilder和StringBuffer的區別聯絡

StringBuilder和StringBuffer的區別聯絡

之前剛開始接觸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;
    }