国产探花免费观看_亚洲丰满少妇自慰呻吟_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的使用方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合水县| 汽车| 卢湾区| 西乌珠穆沁旗| 江门市| 沂源县| 嘉善县| 阿城市| 正安县| 来宾市| 平和县| 丽江市| 通州区| 昌平区| 淮滨县| 名山县| 西畴县| 长汀县| 库车县| 重庆市| 廉江市| 翼城县| 远安县| 同仁县| 海盐县| 确山县| 新乡市| 景洪市| 雅江县| 平舆县| 五大连池市| 双峰县| 仁怀市| 鹤壁市| 玉田县| 敦煌市| 宁海县| 孝昌县| 邵东县| 蒙自县| 伊宁县|