C# string 是不可變的,指什麼不可變

String  表示文本,即一系列 Unicode 字符。字符串是 Unicode 字符的有序集合,用於表示文本。String 對象是 System.Char 對象的有序集合,用於表示字符串。String 對象的值是該有序集合的內容,而且該值是不可變的。String 對象稱爲不可變的(只讀),由於一旦建立了該對象,就不能修改該對象的值。看來彷佛修改了 String 對象的方法其實是返回一個包含修改內容的新 String 對象。StringBuilder 類 表示可變字符字符串。沒法繼承此類。 此類表示值爲可變字符序列的相似字符串的對象。之因此說值是可變的,是由於在經過追加、移除、替換或插入字符而建立它後能夠對它進行修改。大多數修改此類的實例的方法都返回對同一實例的引用。因爲返回的是對實例的引用,所以能夠調用該引用的方法或屬性。若是想要編寫將連續操做依次鏈接起來的單個語句,這將很方便。StringBuilder 的容量是實例在任何給定時間可存儲的最大字符數,而且大於或等於實例值的字符串表示形式的長度。容量可經過 Capacity 屬性或 EnsureCapacity 方法來增長或減小,但它不能小於 Length 屬性的值。若是在初始化 StringBuilder 的實例時沒有指定容量或最大容量,則使用特定於實現的默認值。
相關文章
相關標籤/搜索