欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

string與stringbuilder兩者的區(qū)別

 更新時間:2019年01月22日 08:47:11   作者:Mogul1  
今天小編就為大家分享一篇關(guān)于string與stringbuilder兩者的區(qū)別,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

String 對象是不可改變的。每次使用 System.String 類中的方法之一時,都要在內(nèi)存中創(chuàng)建一個新的字符串對象,這就需要為該新對象分配新的空間。 

StringBuilder 對象是動態(tài)對象,允許擴(kuò)充它所封裝的字符串中字符的數(shù)量,但是您可以為它可容納的最大字符數(shù)指定一個值,當(dāng)修改 StringBuilder 時,在達(dá)到容量之前,它不會為其自己重新分配空間。當(dāng)達(dá)到容量時,將自動分配新的空間且容量翻倍??梢允褂弥剌d的構(gòu)造函數(shù)之一來指定 StringBuilder 類的容量。

例如: StringBuilder hr = new StringBuilder(); hr.Append("a")他不會頻繁申請內(nèi)存空間,他會自動向后擴(kuò)展。

兩者的區(qū)別:

1. string 對象時恒定不變的,stringBuider對象表示的字符串是可變的。stringBuilder是.net提供的動態(tài)創(chuàng)建string的高效方式,以克服string對象恒定性帶來的性能影響。

2. 對于簡單的字符串連接操作,在性能上stringBuilder并不一定總是優(yōu)于string。因為stringBuider對象創(chuàng)建代價較大,在字符串目標(biāo)連接較少的情況下,過度濫用stringBuilder會導(dǎo)致性能的浪費,只有大量的或者無法預(yù)知次數(shù)的字符串操作,才考慮stringBuilder來實現(xiàn)。事實上,一般連接次數(shù)設(shè)置100次以內(nèi),根本看不出兩者的性能差別。

3. 當(dāng)修改字符串信息時,此時不許創(chuàng)建對象,可以使用stringBuilder對象。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • 關(guān)于C# 5.0 CallerMemberName CallerFilePath CallerLineNumber 在.NET4中的使用介紹方法

    關(guān)于C# 5.0 CallerMemberName CallerFilePath CallerLineNumber 在.

    本篇文章,小編為大家介紹關(guān)于C# 5.0 CallerMemberName CallerFilePath CallerLineNumber 在.NET4中的使用介紹方法,有需要的朋友可以參考一下
    2013-04-04
  • 高效C#編碼優(yōu)化原則

    高效C#編碼優(yōu)化原則

    這篇文章主要介紹了高效C#編碼優(yōu)化原則,非常實用,需要的朋友可以參考下
    2014-08-08
  • C#程序集的主版本號和次版本號的實現(xiàn)

    C#程序集的主版本號和次版本號的實現(xiàn)

    C# 程序集的版本號和次版本號是程序集的一部分,用于標(biāo)識程序集的不同版,本本文主要介紹了C#程序集的主版本號和次版本號的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • C#實現(xiàn)簡單的點餐系統(tǒng)

    C#實現(xiàn)簡單的點餐系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)簡單的點餐系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C#實現(xiàn)JSON解析器MojoUnityJson功能(簡單且高效)

    C#實現(xiàn)JSON解析器MojoUnityJson功能(簡單且高效)

    MojoUnityJson 是使用C#實現(xiàn)的JSON解析器 ,算法思路來自于游戲引擎Mojoc的C語言實現(xiàn) Json.h。這篇文章主要介紹了C#實現(xiàn)JSON解析器MojoUnityJson的方法,需要的朋友可以參考下
    2018-01-01
  • C#求n個數(shù)中最大值和最小值的方法

    C#求n個數(shù)中最大值和最小值的方法

    這篇文章主要介紹了C#求n個數(shù)中最大值和最小值的方法,涉及C#中max及min方法的使用技巧,需要的朋友可以參考下
    2015-05-05
  • c#將字節(jié)數(shù)組轉(zhuǎn)成易讀的字符串的實現(xiàn)

    c#將字節(jié)數(shù)組轉(zhuǎn)成易讀的字符串的實現(xiàn)

    這篇文章主要介紹了c#將字節(jié)數(shù)組轉(zhuǎn)成易讀的字符串的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • C#關(guān)鍵字之重寫override介紹

    C#關(guān)鍵字之重寫override介紹

    這篇文章介紹了C#關(guān)鍵字之重寫override,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#如何連接數(shù)據(jù)庫

    C#如何連接數(shù)據(jù)庫

    這篇文章主要介紹了C#如何連接數(shù)據(jù)庫問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 詳細(xì)解析C#多線程同步事件及等待句柄

    詳細(xì)解析C#多線程同步事件及等待句柄

    本篇文章主要介紹了C#多線程同步事件及等待句柄,希望通過本篇的介紹能對常見的線程同步方法有一個整體的認(rèn)識,有需要的可以了解一下。
    2016-11-11

最新評論