JavaRush /Java Blog /Random-TW /Java 8 中的 StringBuilder 類別及其實際範例
Нина Можарская
等級 17
Киев

Java 8 中的 StringBuilder 類別及其實際範例

在 Random-TW 群組發布
該類別String創建不可變字串。這意味著如果您對字串應用任何操作或對字串進行操作,結果將是一個新字串。如果這個新字串沒有指派給任何變量,則操作結果將會遺失。因此,對此類字串的操作必然導致新字串的建立。這意味著額外的記憶體和處理器時間成本。如果對字串有很多操作,那麼使用由類別實現的動態字串通常會更有效StringBuilder
Java 8 中的 StringBuilder 類別及其實際範例 - 1
考慮下面的程式碼:
String s = "Some text";
int count = 100;
for(int i = 0; i<100;i++){
   s+=i;
}
**********************
StringBuilder s = new StringBuilder(110);
int count = 100;
s.append("Some text");
for(int i = 0;i<count;i++){
s.append(i);
}
上面的程式碼解決了同樣的問題。當我們向給定字串添加 100 個新子字串時。第一個範例使用該類別來實現此目的String,但效率不高,因為每次新增子字串都會導致建構新物件String。這是對記憶體和時間的額外浪費。在第二個範例中,使用 類別 解決了這個問題StringBuilder。我們預先創建一個類別的對象StringBuilder,然後使用append我們的方法透過更改創建的對象的內容來形成我們需要的字串StringBuilder,但無需重新創建對象本身。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION