zoukankan      html  css  js  c++  java
  • C#学习笔记之——用ArrayList和List的效率区别

    用Stopwatch来记录时间,不过要使用,必须引入System.Diagnostics

    Stopwatch sw1_1 = new Stopwatch ();
    Stopwatch sw2_1 = new Stopwatch ();
    
    ArrayList arrList1 = new ArrayList ();
    List<int> list1 = new List<int> ();
    
    sw1_1.Start ();
    for (int i = 0; i < 10000; i++) {
    	arrList1.Add (i);
    }
    sw1_1.Stop ();
    Console.WriteLine ("值类型ArrayList" + sw1_1.Elapsed);
    
    sw2_1.Start ();
    for (int i = 0; i < 10000; i++) {
    	list1.Add (i);
    }
    sw2_1.Stop ();
    Console.WriteLine ("值类型List" + sw2_1.Elapsed);
    
    ArrayList arrList2 = new ArrayList ();
    List<string> list2 = new List<string> ();
    
    Stopwatch sw1_2 = new Stopwatch ();
    Stopwatch sw2_2 = new Stopwatch ();
    
    sw1_2.Start ();
    for (int i = 0; i < 10000; i++) {
    	arrList2.Add ("ok");
    }
    sw1_2.Stop ();
    Console.WriteLine ("引用类型ArrayList" + sw1_2.Elapsed);
    
    sw2_2.Start ();
    for (int i = 0; i < 10000; i++) {
    	list2.Add ("ok");
    }
    sw2_2.Stop ();
    Console.WriteLine ("引用类型List" + sw2_2.Elapsed);

    可以看到结果如下:

    值类型ArrayList00:00:00.0033938

    值类型

    List00:00:00.0009302

    引用类型ArrayList00:00:00.0003928

    引用类型

    List00:00:00.0008262


    所以值类型用List时间短,因为不需要装拆箱操作

    引用类型用ArrayList时间短

    相关文章:C#学习笔记之——List

  • 相关阅读:
    关于Table.Compute("Sum(qty)","XXX")的坑
    转载:window.open传值
    一些有用的SQL语句
    VS调试的时候也会锁定SQL对象
    关于数据中时间的坑
    那些年踩过的坑
    一段SQL
    关于下载的问题
    download excle的幾個問題的解決
    《浪潮之巅》读书笔记——第10章 惠普
  • 原文地址:https://www.cnblogs.com/AlinaL/p/12852181.html
Copyright © 2011-2022 走看看