国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

深入理解StringBuilder的使用方法

2020-01-24 01:09:49
字體:
來源:轉載
供稿:網友

今天用到了StringBuilder來拼接查詢語句,發現這個真好用,決定做個小結。

百度一個StringBuilder的定義:String 對象是不可改變的。每次使用 System.String 類中的方法之一時,都要在內存中創建一個新的字符串對象,這就需要為該新對象分配新的空間。在需要對字符串執行重復修改的情況下,與創建新的 String 對象相關的系統開銷可能會非常昂貴。如果要修改字符串而不創建新的對象,則可以使用 System.Text.StringBuilder 類。

主要是StringBuilder的Append()方法和Capacity屬性。

注意當Capacity小于Length時,Capacity是以2倍的方式來擴充的。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace StringBuilder的使用{  class Program  {    static void Main(string[] args)    {      StringBuilder s = new StringBuilder();      long dataStart = DateTime.Now.Ticks;      for (int i = 0; i < 1000; i++)      {        s.Append('a', i);      }      long dataEnd = DateTime.Now.Ticks;      Console.WriteLine(s.Capacity);      Console.WriteLine("用時:{0}", (dataEnd - dataStart) / 100000.0);      dataStart = DateTime.Now.Ticks;      for (int i = 0; i < 1000; i++)      {        s.Append('a', i);        if (s.Capacity < s.Length)        {          s.Capacity += 8;        }      }      dataEnd = DateTime.Now.Ticks;      Console.WriteLine("用時:{0}", (dataEnd - dataStart) / 100000.0);      Console.Read();    }  }}

輸出結果:

以上這篇深入理解StringBuilder的使用方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 于都县| 裕民县| 锡林郭勒盟| 晋州市| 邯郸市| 临猗县| 昆山市| 乐山市| 九龙坡区| 建始县| 肥城市| 通渭县| 丹阳市| 鹤壁市| 钟山县| 花垣县| 陆川县| 措美县| 潞西市| 葵青区| 三都| 林芝县| 彝良县| 永新县| 美姑县| 常州市| 仁寿县| 防城港市| 怀柔区| 遂平县| 绩溪县| 祁东县| 百色市| 涞水县| 大同县| 腾冲县| 惠来县| 信宜市| 克什克腾旗| 合肥市| 綦江县|