當前位置:生活全書館 >

生活小竅門

> stringbuffer和stringbuilder的區別是什麼

stringbuffer和stringbuilder的區別是什麼

stringbuffer和stringbuilder的區別是什麼

stringbuffer和stringbuilder的區別

1、執行緒安全:

StringBuffer:執行緒安全,StringBuilder:執行緒不安全。因為StringBuffer的所有公開方法都是synchronized修飾的,StringBuilder並沒有StringBuilder修飾。

2、緩衝區:

StringBuffer每次獲取toString都會直接使用快取區的toStringCache值來構造一個字串。而StringBuilder則每次都需要複製一次字元陣列,再構造一個字串。所以,快取衝這也是對 StringBuffer 的一個優化吧,不過 StringBuffer 的這個toString 方法仍然是同步的。

3、效能:

StringBuffer是執行緒安全的,它所有公開方法都是同步的,StringBuilder是沒有對方法加鎖同步的,所以毫無疑問,StringBuilder的效能要遠大於 StringBuffer。

標籤:
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/xiaoqiaomen/1g6y22.html