String StringBuffer StringBuilder區別
String 是不可變的對象, 因此在每次對 String 類型進行改變的時候其實都等同于生成了一個新的 String 對象,然后將指針指向新的String 對象,所以經常改變內容的字符串最好不要用 String。因為每次生成對象都會對系統性能產生影響,特別當內存中無引用對象多了以后, JVM 的 GC 就會開始工作,那速度是一定會相當慢的。
-------------------------------------------------------------------------------------
StringBuffer 每次結果都會對 StringBuffer 對象本身進行操作,而不是生成新的對象,再改變對象引用。線程安全
-----------------------------------------------------------------------------------------
StringBuilder 用在字符串緩沖區被單個線程使用的時候 線程不安全
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
1.如果要操作少量的數據用 = String
2.單線程操作字符串緩沖區 下操作大量數據 = StringBuilder
3.多線程操作字符串緩沖區 下操作大量數據 = StringBuffer
posted on 2011-10-18 13:05 iceblock 閱讀(173) 評論(0) 編輯 收藏 所屬分類: JAVA基礎