string與StringBuider的區別

       System。String 具備不可修改性,在程序中這樣的特性容易產生性能的問題。針對這個問題,。NET提供的SystemBuilder類可以解決類似的問題。

       String類型具有的特點:

  1. String 是引用類型,在堆上分配內存。
  2. String對象一旦形成,就不可改變。
  3. String 提供了大量的便捷的字符串操作函數。
  4. 運算時會產生一個新的實例。
  5. 在程序中定義相等運算符(==和!=),可方便比較String對象的值(而不是引用)

StringBuider 類型具有的特點:

  1.  StringBuider對象是動態對象,允許擴充它所封裝的字符串中字符的數量。
  2. StringBuider可以用於修改StringBuider中的內容。

       String對象一旦生成,就不可改變,所以每次使用System。String 類中的方法時,都需要在內存中創建一個新的字符串對象,這就會分配一個新的空間給新的對象。如果不創建新的對象,只是修改字符串,則可以使用StringBuider類。StringBuider 類型可以很好的解決字符串操作的性能問題,在它生成字String 對象之前,將不會產生任何String對象。

      StringBuider 與 System。String 相比,它會保留自己的字符緩衝區。在針對StringBuider執行字符串操作時,會首先檢查緩衝區的大小,看是否能容納新的字符串。如果發現不夠,則會增加需要的內存數量,因此可以大幅降低內存配置操作的次數,並可以有效提高性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章