• Flex中常用集合类型性能对比


    测试方法

    privatefunction Test():void

    {

        for(var j:int=0;j<5;j++)

        {

            trace("插入10000项============");

            var t1:int, t2:int;

            var i:int = 0;

            var a:Array = new Array();

            varal:ArrayCollection = new ArrayCollection();

            var item:String;

            var v:Vector.<String> = new Vector.<String>();

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                a.push(StringUtil.NewGuid());   

            t2 = getTimer();

            trace("Array耗时:/t/t",t2-t1);

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                al.addItem(StringUtil.NewGuid());   

            t2 = getTimer();

            trace("ArrayCollection耗时:/t",t2-t1);

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                v.push(StringUtil.NewGuid());

            t2 = getTimer();

            trace("Vector耗时:/t/t",t2-t1);

           

            trace("");

            trace("遍历10000项==========");

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                item = a[0];

            t2 = getTimer();

            trace("Array耗时:/t/t",t2-t1);

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                item = al[0];

            t2 = getTimer();

            trace("ArrayCollection耗时:/t",t2-t1);

           

            t1 = getTimer();

            for(i=0;i<10000;i++)

                item = v[0];

            t2 = getTimer();

            trace("Vector耗时:/t/t",t2-t1);

            trace("");

        }

    }

    测试输出

    插入10000项============

    Array耗时:         465

    ArrayCollection耗时:     788

    Vector耗时:         444

    遍历10000项==========

    Array耗时:         2

    ArrayCollection耗时:     98

    Vector耗时:         2

    插入10000项============

    Array耗时:         433

    ArrayCollection耗时:     791

    Vector耗时:         430

    遍历10000项==========

    Array耗时:         2

    ArrayCollection耗时:     97

    Vector耗时:         2

    插入10000项============

    Array耗时:         427

    ArrayCollection耗时:     805

    Vector耗时:         415

    遍历10000项==========

    Array耗时:         1

    ArrayCollection耗时:     97

    Vector耗时:         1

    插入10000项============

    Array耗时:         422

    ArrayCollection耗时:     824

    Vector耗时:         401

    遍历10000项==========

    Array耗时:         2

    ArrayCollection耗时:     97

    Vector耗时:         2

    插入10000项============

    Array耗时:         467

    ArrayCollection耗时:     772

    Vector耗时:         438

    遍历10000项==========

    Array耗时:         2

    ArrayCollection耗时:     98

    Vector耗时:         2

    结论

    Array与Vector性能接近,插入时Vector略快,遍历相近,Vector的优点是强类型,缺点是要Flash Player 10,所以作数据存储运算等建议使用Array。

    ArrayCollection性能最差,插入时约比Array慢了一倍,遍历慢了几十倍,ArrayCollection的优势是界面的数据绑定以及支持数据排序等高级方法。

    原文:http://blog.csdn.net/hunkcai/article/details/6159516

  • 相关阅读:
    报表选型应该知道的
    报表工具——开源还是商用
    地图报表怎么做?
    关于报表在移动端展现需你需要知道哪些?
    报表怎样实现滚动的公告效果?
    加速JDBC的快捷方法
    百万级分组大报表开发与呈现
    秒级展现的百万级大清单报表怎么做
    润乾集算器技术文档汇总
    报表使用相关知识及技巧汇总
  • 原文地址:https://www.cnblogs.com/huacw/p/2691021.html
Copyright © 2020-2023  润新知