国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

StringBuilder 類

2019-11-17 03:07:25
字體:
來源:轉載
供稿:網友

StringBuilder 類

表示可變字符字符串。無法繼承此類。

此類表示值為可變字符序列的類似字符串的對象。之所以說值是可變的,是因為在通過追加、移除、替換或插入字符而創建它后可以對它進行修改。有關比較,請參見 String 類。

大多數修改此類的實例的方法都返回對同一實例的引用。由于返回的是對實例的引用,因此可以調用該引用的方法或屬性。如果想要編寫將連續操作依次連接起來的單個語句,這將很方便。

StringBuilder 的容量是實例在任何給定時間可存儲的最大字符數,并且大于或等于實例值的字符串表示形式的長度。容量可通過 Capacity 屬性或 EnsureCapacity 方法來增加或減少,但它不能小于 Length 屬性的值。

如果在初始化 StringBuilder 的實例時沒有指定容量或最大容量,則使用特定于實現的默認值。

性能注意事項

Concat 和 AppendFormat 方法都將新數據串連到一個現有的 StringStringBuilder 對象。String 對象串聯操作總是用現有字符串和新數據創建新的對象。StringBuilder 對象維護一個緩沖區,以便容納新數據的串聯。如果有足夠的空間,新數據將被追加到緩沖區的末尾;否則,將分配一個新的、更大的緩沖區,原始緩沖區中的數據被復制到新的緩沖區,然后將新數據追加到新的緩沖區。

StringStringBuilder 對象的串聯操作的性能取決于內存分配的發生頻率。String 串聯操作每次都分配內存,而 StringBuilder 串聯操作僅當 StringBuilder 對象緩沖區太小而無法容納新數據時才分配內存。因此,如果串聯固定數量的 String 對象,則 String 類更適合串聯操作。這種情況下,編譯器甚至會將各個串聯操作組合到一個操作中。如果串聯任意數量的字符串,則 StringBuilder 對象更適合串聯操作;例如,某個循環對用戶輸入的任意數量的字符串進行串聯。

給實現者的說明 此實現的默認容量是 16,默認的最大容量是 Int32.MaxValue。 當實例值增大時,StringBuilder 可按存儲字符的需要分配更多的內存,同時對容量進行相應的調整。分配的內存量是特定于實現的,而且如果所需內存量大于最大容量,會引發 ArgumentOutOfRangeException。 例如,Append、AppendFormat、EnsureCapacity、Insert 和 Replace 方法能增大實例的值。 通過 Chars 屬性可以訪問 StringBuilder 的值中的單個字符。索引位置從零開始。

來源自MSDN

——————————————————分割線————————————————————————

在對大量的字符串進行拼接操作的時候,StringBuilder的性能會比string中的‘+’要高一些,實現的結果是一樣的。

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace demo{    class PRogram    {        static void Main(string[] args)        {           StringBuilder str1 =  new StringBuilder();           string str2 = "Test message ";                       str1.Append("Test");           str1.Append(" message");                       Console.WriteLine("This is str1 :"+str1);           Console.WriteLine("This is str2 :"+str2);           Console.ReadKey();        }    }}

append方法可以對其對象進行字符串的拼接, appendline可以對拼接后的字符串換行。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高安市| 苗栗县| 浏阳市| 林州市| 杭锦旗| 四平市| 新宾| 高唐县| 榆树市| 邵阳县| 富裕县| 保靖县| 乐东| 天水市| 广宁县| 乌拉特后旗| 浏阳市| 湖北省| 余江县| 封丘县| 松原市| 奎屯市| 林周县| 玉环县| 柞水县| 顺平县| 鄂州市| 独山县| 建湖县| 乐昌市| 竹山县| 贵德县| 高平市| 都安| 永寿县| 益阳市| 白沙| 乌兰浩特市| 南通市| 灌阳县| 丽江市|