可變字符串類
對於創建成功的字符串對象,它的長度是固定的,內容不能被改變和編譯。雖然使用“+”可以達到附加新字符或字符串的目的,但“+”會產生一個新的String實例,會在內存中創建新的字符串對象,如果重複的對字符串進行修改,將極大地增加系統開銷。而C#中提供了一個可變的字符序列StringBuilder類,大大提高了頻繁增加字符串的效率。
StringBuilder類的定義
StringBuilder有6種不同的構造方法。其中之一爲:
public StringBuilder(string value,int cap)
value:StringBuilder對象引用的字符串。
cap:設定StringBuilder對象的初始大小。
例如:
創建一個StringBuilder對象,其初始引用的字符串爲“HelloWorld”。
StringBuilder _stringBuilder=new StringBuilder("HelloWorld");
類表示值爲可變字符序列的類似字符串的對象。之所以說值是可變的,是因爲在通過追加、移除、替換或插入字符而創建它後可以對它進行修改。
StringBuilder類存在於System.Text命名空間中,如果要創建StringBuilder對象,首先必須引用此命名空間。StringBuilder類中常用的幾個操作字符串的方法。
Append:將文本或字符串追加到指定對象的末尾。
AppendFormat:自定義變量的格式並將這些值追加到StringBuilder對象的末尾
Insert:將字符串或對象添加到當前StringBuilder對象中的指定位置
Remove:從當前StringBuilder對象中移除指定數量的字符
Replace:用另一個指定的字符來替換StringBuilder對象內的字符。
例如:
創建一個控制檯應用程序,聲明一個int類型的變量num,並初始化爲1000。然後創建一個StringBuilder對象。其初始值爲:用一生下載你。初始大小爲100。最後使用StringBuildr類的Append、AppendFormat、Insert、Remove、Replace方法操作StringBuilder對象。
int num=1000;
StringBuildr _stringBuilder=new StringBuilder("用一生下載你",100);
_stringBuilder.Append("風花雪月");
_stringBuilder.Insert(0,"名稱爲:");
_stringBuilder.Remove(15,10);
_stringBuilder.Replace("名稱","一生所愛");