關于String,StringBuffer,StringBuilder的總結
1.三者之間的對比
首先三者的執行速度(運作速度)是: StringBuilder>StringBuffer>String。
String适合少量字元串的操作情況。
StringBuilder适合單線程下在字元緩沖區進行大量操作
StringBuilder适合多線程下在字元緩沖區進行大量操作
單線程情況下使用StringBuilder就可以避免使用String是所帶來的記憶體大量占用,即StringBuilder可以在存儲後進行增删改插。多線程則使用StringBuffer。
首先StringBuffer的很多方法都帶有synchronized修飾,是以保證了線程安全,即一旦有一個線程通路了本對象則其他線程無法通路,而且修改後的對象内容也會直接存儲重新整理,不會出現髒讀。但是StringBuilder并沒有這種安全機制,但是在單線程中卻有着很良好的性能。
2.StringBuilder的使用:
方法1增:append(Str a)尾部插入字元串。
方法2插:insert(int 插入坐标,Str a) 将字元串a插入指定位置。
方法3删:delete(int start, int end)将字元串從開始到結束下标内的字元串删除。
方法4改:replace(int start,int end,String str)将字元串從開始位置到結束位置之間的内容替換為str字元串的内容。
方法5替換内容:replaceAll(正規表達式,String a),使用表達式将指定内容替換成字元串a。(和諧神器)
方法6 查:StringBuilder的toString()傳回一個與本對象的建構器或者緩存器内容相同的字元串。
方法7::split(正則) 比對出本字元串中所有的以正則為切片點的字元串數組。