来自:http://www.guiguan.net/?p=63
其实在C#中要实现这个很简单,只要运用DateTime.Now记下程序开始和结束的时间再相减就行了。语法如下:
DateTime startTime=DateTime.Now;
……
DateTime endTime=DateTime.Now;
Console.WriteLine("程序运行的时间是:{0}",(endTime-startTime));
例如我们可以用这个方法测试采用装箱和不装箱两种情况哪个效率更高
运行结果如下:
源代码如下:
namespace Demo
{
class EfficiencyOfBoxupAndoff
{
[STAThread]
static void Main(string[] args)
{
int[] sourceArray=new int[5000000];
object[] targetArray=new object[5000000];
DateTime Start=DateTime.Now;
for (int i=0;i<5000000;i++)
{
targetArray[i]=sourceArray[i];
}
for (int i=0;i<5000000;i++)
{
sourceArray[i]=(int)targetArray[i];
}
DateTime End=DateTime.Now;
Console.WriteLine("装箱和拆箱所用的时间为:"+(End-Start));
Start=DateTime.Now;
int[] targetArray1=new int[5000000];
for (int i=0;i<5000000;i++)
{
sourceArray[i]=targetArray1[i];
}
End=DateTime.Now;
Console.WriteLine("不装箱和拆箱所用的时间为:"+(End-Start));
}
}
}