溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C#中如何對Sting和StirngBuilder進行速度測試

發(fā)布時間:2021-08-14 11:42:07 來源:億速云 閱讀:184 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關(guān)C#中如何對Sting和StirngBuilder進行速度測試,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

對Sting和StirngBuilder進行速度測試

使用Stopwatch 秒表計時器類(注意引用命名空間System.Diagnostics;)中的方法,Start()開始計時,Stop()停止計時,屬性Elapsed:返回開始到結(jié)束的時間間隔

然后對Sting類型的變量和Stringbuilder的對象進行相同的操作,我這里是讓他們添加50000個字符

代碼和運行結(jié)果如下:

  • String用時:約1.6s

  • StringBuilder用時:約0.007s

using System;
using System.Diagnostics;
using System.Text;
namespace StringBuild時間測試
{
 class Program
 {
  static void Main(string[] args)
  {
   Stopwatch sw = new Stopwatch();
   sw.Start();   
   StringBuilder sb = new StringBuilder();
   for (int i = 0; i < 50000; i++)
   {
    sb.Append(i);
   }
   sw.Stop();
   Console.WriteLine(sw.Elapsed);
   Console.ReadKey();
  }
 }
}

使用StringBuilder運行結(jié)果:

C#中如何對Sting和StirngBuilder進行速度測試

using System;
using System.Diagnostics;
using System.Text;
namespace StringBuild時間測試
{
 class Program
 {
  static void Main(string[] args)
  {
   Stopwatch sw = new Stopwatch();
   sw.Start();
   string num = "";
   for (int i = 0; i < 50000; i++)
   {
    num += i;
   } 
   sw.Stop();
   Console.WriteLine(sw.Elapsed);
   Console.ReadKey();
  }
 }
}

使用String運行結(jié)果:

C#中如何對Sting和StirngBuilder進行速度測試

常用方法簡介:

String

1,CompareTo()方法,比較字符串的內(nèi)容 (根據(jù)assice比較大小,相等返回0,大的返回1,小則返回-1)

2,Replace()用另一個字符(字符串)替換字符串中給定的字符(字符串)

3,Split()在出現(xiàn)給定字符的地方,把字符串拆分稱一個字符串數(shù)組(根據(jù)(參數(shù))分解字符串,形成新的字符串)

4,SubString()在字符串中檢索給定位置的子字符串(截取字符串返回子串,兩個重載)

5,ToLower()把字符串轉(zhuǎn)換成小寫形式

6,ToUpper()把字符串轉(zhuǎn)換成大寫形式

7,Trim()刪除首尾的空白(比如:注冊時用戶名,密碼不允許首尾出現(xiàn)空格)

8,Concat()方法,合并字符串

9,CopyTo()方法,把字符串中指定的字符復(fù)制到一個數(shù)組中

10,Format()方法,格式化字符串

11,IndexOf()方法,取得字符串第一次出現(xiàn)某個給定字符串或者字符的位置(返回第一個字符串出現(xiàn)的位置,不存在則返回-1,常用于判斷是否包含子串)

12,Insert()把一個字符串實例插入到另一個字符串實例的制定索引處

13,Join()合并字符串數(shù)組,創(chuàng)建一個新字符串

StringBuilder (注意引用命名空間System.Text)

1,創(chuàng)建StringBuilder對象

//==================StringBuilder==================
   //利用構(gòu)造函數(shù)創(chuàng)建
   StringBuilder sb = new StringBuilder("Czhenya");
   //創(chuàng)建初始長度的空對象,
   StringBuilder sb1 = new StringBuilder(12);
   //創(chuàng)建初始字符串和初始空間
   StringBuilder sb2 = new StringBuilder("Czhenya", 20);
//如果初始空間不足,那么將申請新的空間,空間大小為原來的2倍

關(guān)于StringBuilder對象創(chuàng)建的時候的內(nèi)存占用

2,Append()方法,給當前字符串追加一個字符

3,Insert()追加特定格式的字符串

4,Remove()從當前字符串中刪除字符

5,Replace()在當前字符串中,用某個字符或者字符串全部替換另一個字符或者字符串

6,ToString()把當前stringBuilder中存儲的字符串,提取成一個不可變的字符串

關(guān)于“C#中如何對Sting和StirngBuilder進行速度測試”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI