JavaSE06_常用類之String StringBuffer StringBuilder比較

常用類之String StringBuffer StringBuilder比較


String(不可變字符串序列)

StringBuffer(線程安全的可變字符串序列)

StringBuilder(非線程安全的可變字符串序列)

 

個人理解(僅供參考,歡迎指正):

1.String是不可變的,StringBuffer/StringBuilder 是可變的。

2.String類提供更加豐富的功能函數(相對另外兩個)。

3.頻繁的做字符串增減操作時,處於性能優化的角度請考慮使用StringBuffer/StringBuilder,因爲這個時候它工作的實質還是轉換成可變序列然後再做操作。

4.StringBuilder是JDK1.5開始出現的類,他和StringBuffer的用法幾乎一樣,只不過他是非線程安全的。所以在單線程不需要考慮線程安全(同步問題)的時候,優先選擇使用StringBuilder,因爲他沒有線程安全的相關操作,性能上會略顯優勢。

 

使用選擇建議:

Stirng:對字符串序列自身增減變化少,功能複雜的字符串操作時。

StringBuffer:對字符串增減操作較多,多線程下 需要考慮同步問題(需要線程安全)時。

StringBuilder:對字符串增減操作較多的,不需要考慮線程安全時。


發佈了132 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章