LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#中 StringBuilder 用法和 String 區(qū)別

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

前言

C# 中的字符串類型是不可變的,因此在其創(chuàng)建后就無法更改其內(nèi)容。如果我們在創(chuàng)建字符串類型對象后嘗試修改該對象將導(dǎo)致在內(nèi)存中創(chuàng)建該對象的新實(shí)例。此外,如果字符串頻繁更改,可能會出現(xiàn)性能問題。對于需要修改字符串,可以使用 StringBuilder 來解決,因?yàn)榕c字符串不同,它能夠動態(tài)擴(kuò)展內(nèi)存以適應(yīng)任何操作。本文將介紹它的用法。

StringBuilder

1、實(shí)例:

StringBuilder 實(shí)例化相當(dāng)簡單。使用 new 關(guān)鍵字創(chuàng)建類的對象,就可以實(shí)例化。根據(jù)需求選擇對應(yīng)的構(gòu)造函數(shù)。
// 創(chuàng)建的是空白可變字符串對象,不包含任何內(nèi)容StringBuilder stringBuilderEmpty = new StringBuilder();// 根據(jù)字符串的內(nèi)容,來創(chuàng)建可變字符串對象StringBuilder stringBuilder = new StringBuilder("Hello, ");

2、轉(zhuǎn)換:

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

3、追加:

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

3.1、追加終止符:

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

3.2、追加格式:

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

4、插入:

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

5、替換:

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

6、移除:

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

7、清除:

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

區(qū)別

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

小結(jié)

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


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

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
日本在线看片免费人成视频 | 一本色道久久99一综合 | 亚洲V国产一区二区三区 | 亚洲制服丝袜在线二区 | 日本午夜精品视频在线观看 | 色综合天天综合网国产 |