在前幾節我們學習了String字串對象,String類別建立的字串物件是不可修改的,也就是說,String字串不能修改、刪除或替換字串中的某個字符, 即String對像一旦創建,其實體是不可以再發生變化的,例如:
Strings=newString(我喜歡散步);
其中,我喜歡散步為實體,不可以再改變。
那麼這一節我們來學習StringBuffer類,該類別能創建可修改的字串序列,也就是說,該類別的物件的實體的記憶體空間可以自動地改變大小,以便存放一個可變的字元序列。
例如,一個StringBuffer物件呼叫append方法可以追加字元序列:
StringBuffers=newStringBuffer(我喜歡);
那麼,物件s可呼叫append方法追加一個字串序列:
s.append(游泳);
其中,我喜歡游泳為實體,實體會改變。
StringBuffer類別有三個建構方法:
使用第1個無參數的構造方法建立一個StringBuffer對象,那麼分配給該對象的實體的初始容量可以容納16個字符,當該對象的實體存放的字符序列的長度大於16時,實體的容量自動增加,以便存放所增加的字元。 StringBuffer物件可以透過length()方法取得實體中存放的字元序列的長度,透過capacity()方法取得目前實體的實際容量。
使用第2個建構方法建立一個StringBuffer對象,那麼可以指定分配給該對象的實體的初始容量為參數size指定的字元個數,當該對象的實體存放的字元序列的長度大於size個字元時,實體的容量自動增加,以便存放所增加的字元。
使用第3個建構方法建立一個StringBuffer對象,那麼可以指定分配給該對象的實體的初始容量為參數字串s的長度額外再加16個字元。