手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#泛型与非泛型性能比较的实例
C#泛型与非泛型性能比较的实例
摘要:复制代码代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;...

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

namespace ConsoleApplication

{

class Program

{

static int length = 1000 * 1000;

static void Main(string[] args)

{

int iteration=10;//方法执行次数

CodeTimer.Time("值类型处理-泛型方法", iteration, Test1);

CodeTimer.Time("值类型处理-非泛型方法", iteration, Test2);

//CodeTimer.Time("引用类型处理-泛型方法", iteration, Test3);

//CodeTimer.Time("引用类型处理-非泛型方法", iteration, Test4);

Console.ReadKey();

}

/// <summary>

/// 值类型泛型方法

/// </summary>

static void Test1()

{

List<int> l = new List<int>();

for (int i = 0; i < length; i++)

{

l.Add(i);

int a = l[i];

}

l = null;

}

/// <summary>

/// 值类型非泛型方法

/// </summary>

static void Test2()

{

ArrayList a = new ArrayList();

for (int i = 0; i < length; i++)

{

a.Add(i);

int s = (int)a[i];

}

a = null;

}

/// <summary>

/// 引用类型泛型方法

/// </summary>

static void Test3()

{

List<string> l = new List<string>();

for (int i = 0; i < length; i++)

{

l.Add("l");

string s = l[i];

}

}

/// <summary>

/// 引用类型的非泛型方法

/// </summary>

static void Test4()

{

ArrayList a = new ArrayList();

for(int i=0;i<length;i++)

{

a.Add("a");

string s = (string)a[i];

}

a = null;

}

}

}

C#泛型与非泛型性能比较的实例1

值类型的泛型与非泛型的性能比较,方法执行10次,由此可见 使用泛型要比非泛型的效率高很多。

C#泛型与非泛型性能比较的实例2

【C#泛型与非泛型性能比较的实例】相关文章:

c# 引用类型与值类型的区别详解

C#修改MAC地址类的实例

c# 深拷贝与浅拷贝的区别分析及实例

C#实现路由器断开连接,更改公网ip的实例代码

C#关于反射加载的问题

c#数据库与TXT导入导出的实例

C# 图片剪切与缩小的实例

C# 实现简单打印的实例代码

基于c# 接口的实例详解

C#动态执行字符串(动态创建代码)的实例代码

精品推荐
分类导航