1、線程安全:StringBuffer:線程安全,StringBuilder:線程不安全。因為StringBuffer的所有公開方法都是synchronized修飾的,StringBuilder并沒有StringBuilder修飾。
2、緩沖區:StringBuffer每次獲取toString都會直接使用緩存區的toStringCache值來構造一個字符串。而StringBuilder則每次都需要複制一次字符數組,再構造一個字符串。所以,緩存沖這也是對 StringBuffer 的一個優化吧,不過 StringBuffer 的這個toString 方法仍然是同步的。
3、性能:StringBuffer是線程安全的,它所有公開方法都是同步的,StringBuilder是沒有對方法加鎖同步的,所以毫無疑問,StringBuilder的性能要遠大于 StringBuffer。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!