var关键字是.net3.5推出的关键字,主要是让编译器自动推断并判断变量类型,类似javascript中的var。在使用一些性能优化软件时,在代码优化时,我发现不管定义什么类型的变量,变量的类型都统统换成var。难道var的性能比具体的类型和object都要高? 实践出真知 ...
var关键字是.net3.5推出的关键字,主要是让编译器自动推断并判断变量类型,类似javascript中的var。
在使用一些性能优化软件时,在代码优化时,我发现不管定义什么类型的变量,变量的类型都统统换成var。难道var的性能比具体的类型和object都要高?
实践出真知:
新建一个控制台应用程序
1 /*Var 性能测试 */ 2 Stopwatch stw = new Stopwatch(); 3 4 List<int> intlist = new List<int>(); 5 stw.Start(); 6 for( int i = 0; i < 10000000; i++ ) { 7 var index = i;//使用var转入和转出 8 intlist.Add(index); 9 }10 stw.Stop();11 Console.WriteLine("Var:{0}", stw.Elapsed.Ticks);12 13 14 /*Int 性能测试 */15 16 17 List<int> intlist2 = new List<int>();18 stw.Start();//开始时间19 for( int i = 0; i < 1000000; i++ ) {20 int index = i;//使用int转入和转出21 intlist2.Add(index);22 }23 stw.Stop();24 Console.WriteLine("int:{0}", stw.Elapsed.Ticks);25 26 /*Object性能测试 */27 stw.Start();//开始时间28 29 List<int> intlist3 = new List<int>();30 for( int i = 0; i < 1000000; i++ ) {31 object index = i;//使用object转入和转出32 intlist3.Add((int)index);33 }34 stw.Stop();35 Console.WriteLine("obj:{0}", stw.Elapsed.Ticks);36 37 Console.Read();
原标题:C#中var、int、object性能比较
关键词:C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。