LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#中 StringBuilder 用法和 String 區別

admin
2024年7月24日 23:4 本文熱度 1228

前言

C# 中的字符串類型是不可變的,因此在其創建后就無法更改其內容。如果我們在創建字符串類型對象后嘗試修改該對象將導致在內存中創建該對象的新實例。此外,如果字符串頻繁更改,可能會出現性能問題。對于需要修改字符串,可以使用 StringBuilder 來解決,因為與字符串不同,它能夠動態擴展內存以適應任何操作。本文將介紹它的用法。

StringBuilder

1、實例:

StringBuilder 實例化相當簡單。使用 new 關鍵字創建類的對象,就可以實例化。根據需求選擇對應的構造函數。
// 創建的是空白可變字符串對象,不包含任何內容StringBuilder stringBuilderEmpty = new StringBuilder();// 根據字符串的內容,來創建可變字符串對象StringBuilder stringBuilder = new StringBuilder("Hello, ");

2、轉換:

使用 StringBuilder 不會直接返回字符串,需要我們使用ToString()方法來轉換為字符串。
// 創建可變字符串對象StringBuilder stringBuilder = new StringBuilder("李明,您好!");// 輸出Console.WriteLine(stringBuilder.ToString());

3、追加:

使用Append 方法,將新字符串追加到現有 StringBuilder 的末尾。其長度和空間自動增加。
// 創建可變字符串對象StringBuilder stringBuilderTime = new StringBuilder("現在的時間是:");// 追加字符stringBuilderTime.Append(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));// 轉換為字符串string  dateTimeNow = stringBuilderTime.ToString();// 輸出 dateTimeNow - 現在的時間是:2024-06-15 17:56:36Console.WriteLine("{0} - {1}", nameof(dateTimeNow), dateTimeNow);

3.1、追加終止符:

使用 AppendLine 方法可以方便地在 StringBuilder 的末尾追終止符。
// 創建可變字符串對象StringBuilder stringBuilderTime = new StringBuilder("現在的時間是:");// 追加字符stringBuilderTime.Append(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));// 追加終止符stringBuilderTime.AppendLine();// 追加字符stringBuilderTime.Append("今天是星期: ");stringBuilderTime.Append(DateTime.Now.DayOfWeek);// 轉換為字符串string dateTimeNow = stringBuilderTime.ToString();// 現在的時間是:2024-06-15 18:13:19// 今天是星期: SaturdayConsole.WriteLine(dateTimeNow);

3.2、追加格式:

AppendFormat 方法允許我們將字符串所需的格式作為輸入傳遞。
// 創建可變字符串對象StringBuilder stringBuilderTime = new StringBuilder("現在的時間是:");// 加終止符stringBuilderTime.Append(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));// 加終止符stringBuilderTime.AppendLine();// 使用格式化追加stringBuilderTime.AppendFormat("今天是星期: {0}", DateTime.Now.DayOfWeek);// 轉換為字符串string dateTimeNow = stringBuilderTime.ToString();// 現在的時間是:2024-06-15 18:13:19// 今天是星期: SaturdayConsole.WriteLine(dateTimeNow);

4、插入:

Insert  方法將指定對象的字符串插入到 StringBuilder 實例中的指定字符位置。
// 定義變量string name = "李明,";// 創建可變字符串對象StringBuilder stringBuilder= new StringBuilder("您好!");// 在 StringBuilder 實例的0位置開始插入變量的值stringBuilder.Insert(0, name);// 輸出 李明,您好!Console.WriteLine(stringBuilder.ToString());

5、替換:

Replace 方法將 StringBuilder實例中出現的所有指定字符或字符串替換為其他的指定字符或字符串。
// 創建可變字符串對象StringBuilder stringBuilder = new StringBuilder("李明,您好!");// 替換stringBuilder.Replace("李明", "趙小山");// 輸出 趙小山,您好!Console.WriteLine(stringBuilder.ToString())

6、移除:

Remove 方法從 StringBuilder 中刪除預定數量的字符。開始索引和要刪除的字符數是輸入參數。
// 創建可變字符串對象StringBuilder stringBuilder = new StringBuilder("李明,您好!");// 從 StringBuilder 第3個字符開始移除3個字符stringBuilder.Remove(3,3);// 輸出Console.WriteLine(stringBuilder.ToString());

7、清除:

Clear 方法用于刪除 StringBuilder 對象的所有字符。
string name = "李明,";// 創建可變字符串對象StringBuilder stringBuilder= new StringBuilder("您好!");// 在 StringBuilder 實例的0位置開始插入變量的值stringBuilder.Insert(0, name);// 刪除所有字符stringBuilder.Clear();

區別

字符集合可以使用字符串和 StringBuilder 進行保存或存儲。C# 的 string 與 StringBuilder 之間存在一些差異。
1、string 創建后不可改變,如改變則為新實例;StringBuilder 創建后可改變。
2、在處理大字符串字符串時,StringBuilder 優于 string。否則可以忽略不計。
3、命名空間不同,StringBuilder 在 System.Text;string 在 System.String。

小結

以上是 StringBuilder 的用法全部內容及與 String 的區別,希望對大家了字符的處理帶來一些幫助。


該文章在 2024/7/24 23:06:12 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
亚洲线精品一区二区三区 | 亚洲国产精品乱码在线观看 | 亚洲人成网站在线在线观看 | 午夜福利网址入囗 | 黑人巨大亚州宗合在线 | 视频一区网友自拍第二页 |