最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入理解StringBuilder的使用方法

 更新時(shí)間:2016年05月15日 12:02:55   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇深入理解StringBuilder的使用方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

今天用到了StringBuilder來(lái)拼接查詢(xún)語(yǔ)句,發(fā)現(xiàn)這個(gè)真好用,決定做個(gè)小結(jié)。

百度一個(gè)StringBuilder的定義:String 對(duì)象是不可改變的。每次使用 System.String 類(lèi)中的方法之一時(shí),都要在內(nèi)存中創(chuàng)建一個(gè)新的字符串對(duì)象,這就需要為該新對(duì)象分配新的空間。在需要對(duì)字符串執(zhí)行重復(fù)修改的情況下,與創(chuàng)建新的 String 對(duì)象相關(guān)的系統(tǒng)開(kāi)銷(xiāo)可能會(huì)非常昂貴。如果要修改字符串而不創(chuàng)建新的對(duì)象,則可以使用 System.Text.StringBuilder 類(lèi)。

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

注意當(dāng)Capacity小于Length時(shí),Capacity是以2倍的方式來(lái)擴(kuò)充的。

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("用時(shí):{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("用時(shí):{0}", (dataEnd - dataStart) / 100000.0);
      Console.Read();
    }
  }
}

輸出結(jié)果:

以上這篇深入理解StringBuilder的使用方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

西林县| 闸北区| 漠河县| 扎囊县| 都安| 上高县| 青田县| 梧州市| 新郑市| 高碑店市| 玉林市| 府谷县| 怀安县| 罗江县| 闵行区| 阿巴嘎旗| 克什克腾旗| 阳高县| 盐亭县| 彭阳县| 开阳县| 黄龙县| 常熟市| 垦利县| 临江市| 连城县| 上饶县| 乐亭县| 大洼县| 天长市| 巨野县| 郴州市| 天等县| 焦作市| 北海市| 黄石市| 随州市| 泰州市| 科技| 丘北县| 华亭县|