zoukankan      html  css  js  c++  java
  • ArrayList Array List<T>性能比较

    一直知道ArrayList性能不太好,今天就来试了一下, 贴下来以后使用时做个参考.

    请看下面的代码:

    代码
    using System;
    using System.Collections;
    using System.Diagnostics;
    using System.Collections.Generic;
    using System.Text;
    using System.Threading;

    namespace Csharp.Test
    {
        
    public class Program
        {
            
    public static void Main(string[] args)
            {
                var k 
    = 1500000;

                Stopwatch stopWatch 
    = new Stopwatch();
                stopWatch.Start();
                ArrayList arrayList 
    = new ArrayList();
                
    for (int i = 0; i < k; i++)
                {
                    arrayList.Add(i);
                }
                
    foreach (int Item in arrayList)
                {
                    
                }
                stopWatch.Stop();
                Console.WriteLine(
    "ArrayList所花的时间:" + stopWatch.ElapsedMilliseconds);


                stopWatch.Reset();
                stopWatch.Start();
                
    int[] array = new int[k];
                
    for (int i = 0; i < k; i++)
                {
                    array[i] 
    = i;
                }
                
    foreach (int Item in array)
                {
     
                }
                stopWatch.Stop();
                Console.WriteLine(
    "Array所花的时间:" + stopWatch.ElapsedMilliseconds);

                stopWatch.Reset();
                stopWatch.Start();
                List
    <int> listInt = new List<int>();
                
    for (int i = 0; i < k; i++)
                {
                    listInt.Add(i);
                }
                
    foreach (int Item in listInt)
                {

                }
                stopWatch.Stop();
                Console.WriteLine(
    "List所花的时间:" + stopWatch.ElapsedMilliseconds);
                stopWatch.Reset();

                Console.ReadLine();
            }
        }
    }

    运行就可以看到,性能的区别的

    ArrayList  360

    Array  25

    List<T>  60

    从上面的结果可以看出, 360与25之让的差距. 不同项目不同需求, 小项目用ArrayList 能使工作简单,  用也是可以的,  只是做个测试, 并不是排挤, 毕竟微软还是把它做出来了. 所以建议尽量使用Array, 因为往ArrayList里面添加和修改元素,都会引起装箱和拆箱的操作,频繁的操作可能会影响一部分效率。

  • 相关阅读:
    Windows 右键添加用记事本打开的选项
    shell 脚本常用写法
    常用命令--dig
    电子表格数字式的小时化成时分秒格式
    Kaggle猫狗图像分类竞赛Baseline
    阿里巴巴用户体验研究专员暑期实习生笔试 经验分享 2019
    sysctl -w net.core.somaxconn=65535
    src/stream/ngx_stream_proxy_module.c:542: 错误:‘ngx_stream_upstream_t’没有名为‘ssl_name’的成员
    ssl.cpp:333: error: ‘SSL_set_tlsext_host_name’ was not declared in this scope
    fiddler QuickExec
  • 原文地址:https://www.cnblogs.com/whtydn/p/1614292.html
Copyright © 2011-2022 走看看