程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#性能簡析-集合容量的指定

C#性能簡析-集合容量的指定

編輯:C#入門知識

長度動態增加的集合類,例如 ArrayList、Queue等,無需在初始化時指定其容量,集合本身能夠根據需求自動增加集合大小,為程序設計帶來方便。然而,過分依賴這種特性對程序的性能提高並非好的選擇,因為集合動態增加的過程是一個內存重新分配和集合元素復制的過程,會對性能造成一定的影響,所以有必要在集合初始化時指定一個適當的容量。

下面分三種情況來測試指定集合容量對程序性能的影響。

 

\\測試代碼
 1 using System;
2  using System.Collections.Generic;
3  using System.Text;
4  using System.Collections;
5
6  namespace Test_Console
7 {
8 class Program
9 {
10 static void Main(string[] args)
11 {
12 TimeSpan ts = new TimeSpan();
13 DateTime dt = DateTime.Now;
14
15 // 情況一:不指定數組的長度
16
17 for (int i = 0; i < 100000; i++)
18 {
19 ArrayList al = new ArrayList();
20 al.Add("one");
21 al.Add("two");
22 al.Add("three");
23 al.Add("four");
24 al.Add("five");
25 }
26
27 ts = DateTime.Now.Subtract(dt);
28 Console.WriteLine(ts.Milliseconds + " 毫秒");
29
30 dt = DateTime.Now;
31
32 // 情況二:初始化時為集合對象指定適當的容量
33
34 for (int i = 0; i < 100000
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved