1. 测试方法
  2. private function Test():void
  3. {
  4. for(var j:int=;j<;j++)
  5. {
  6. trace("插入10000项============");
  7. var t1:int, t2:int;
  8. var i:int = ;
  9. var a:Array = new Array();
  10. var al:ArrayCollection = new ArrayCollection();
  11. var item:String;
  12. var v:Vector.<String> = new Vector.<String>();
  13.  
  14. t1 = getTimer();
  15. for(i=;i<;i++)
  16. a.push(StringUtil.NewGuid());
  17. t2 = getTimer();
  18. trace("Array耗时:/t/t",t2-t1);
  19.  
  20. t1 = getTimer();
  21. for(i=;i<;i++)
  22. al.addItem(StringUtil.NewGuid());
  23. t2 = getTimer();
  24. trace("ArrayCollection耗时:/t",t2-t1);
  25.  
  26. t1 = getTimer();
  27. for(i=;i<;i++)
  28. v.push(StringUtil.NewGuid());
  29. t2 = getTimer();
  30. trace("Vector耗时:/t/t",t2-t1);
  31.  
  32. trace("");
  33. trace("遍历10000项==========");
  34.  
  35. t1 = getTimer();
  36. for(i=;i<;i++)
  37. item = a[];
  38. t2 = getTimer();
  39. trace("Array耗时:/t/t",t2-t1);
  40.  
  41. t1 = getTimer();
  42. for(i=;i<;i++)
  43. item = al[];
  44. t2 = getTimer();
  45. trace("ArrayCollection耗时:/t",t2-t1);
  46.  
  47. t1 = getTimer();
  48. for(i=;i<;i++)
  49. item = v[];
  50. t2 = getTimer();
  51. trace("Vector耗时:/t/t",t2-t1);
  52. trace("");
  53. }
  54. }
  55. 测试输出
  56. 插入10000项============
  57. Array耗时:
  58. ArrayCollection耗时:
  59. Vector耗时:
  60.  
  61. 遍历10000项==========
  62. Array耗时:
  63. ArrayCollection耗时:
  64. Vector耗时:
  65.  
  66. 插入10000项============
  67. Array耗时:
  68. ArrayCollection耗时:
  69. Vector耗时:
  70.  
  71. 遍历10000项==========
  72. Array耗时:
  73. ArrayCollection耗时:
  74. Vector耗时:
  75.  
  76. 插入10000项============
  77. Array耗时:
  78. ArrayCollection耗时:
  79. Vector耗时:
  80.  
  81. 遍历10000项==========
  82. Array耗时:
  83. ArrayCollection耗时:
  84. Vector耗时:
  85.  
  86. 插入10000项============
  87. Array耗时:
  88. ArrayCollection耗时:
  89. Vector耗时:
  90.  
  91. 遍历10000项==========
  92. Array耗时:
  93. ArrayCollection耗时:
  94. Vector耗时:
  95.  
  96. 插入10000项============
  97. Array耗时:
  98. ArrayCollection耗时:
  99. Vector耗时:
  100.  
  101. 遍历10000项==========
  102. Array耗时:
  103. ArrayCollection耗时:
  104. Vector耗时:
  105. 结论
  106. ArrayVector性能接近,插入时Vector略快,遍历相近,Vector的优点是强类型,缺点是要Flash Player ,所以作数据存储运算等建议使用Array
  107. ArrayCollection性能最差,插入时约比Array慢了一倍,遍历慢了几十倍,ArrayCollection的优势是界面的数据绑定以及支持数据排序等高级方法。

Flex——Array,ArrayCollection,Vector性能比较(转)的更多相关文章

  1. C++中的数组array和vector,lambda表达式,C字符串加操作,C++中新类型数组(数组缓存),多元数组,new缓冲

     使用C++风格的数组.不须要管理内存. array要注意不要溢出,由于它是栈上开辟内存. array适用于不论什么类型 #include<iostream> #include< ...

  2. 【译】Rust中的array、vector和slice

    原文链接:https://hashrust.com/blog/arrays-vectors-and-slices-in-rust/ 原文标题:Arrays, vectors and slices in ...

  3. Flex Array 与 ArrayCollection.转自网络

    1.array作为控件使用 FLEX3写法: <mx:Array id="barname"> <mx:String>Flash</mx:String& ...

  4. Flex 集合 ArrayCollection 的使用

    转:http://keren.iteye.com/blog/380847 转:http://callan.iteye.com/blog/335551 集合是ActionScript 中功能强大的基于索 ...

  5. C++ 数组array与vector的比较

    转:http://blog.csdn.net/yukin_xue/article/details/7391897 1. array 定义的时候必须定义数组的元素个数;而vector 不需要: 且只能包 ...

  6. Flex Array内置排序方法的使用

    在Array类中,提供内置的排序方法.排序是在软件开发的过程中,经常遇到的问题.通过这些内置的方法,可以快速轻便的进行排序操作. Array类提供sort方法对Array实例进行排序.sort方法没有 ...

  7. AS代码优化和Flex应用程序的性能

    1.在局部变量够用时,不要使用全局变量.类静态变量也要少用.全局变量是开发者的恶梦.实在需要全局变量的话,我建议使用singleton设 计模式来进行管理. 2.读取数组中的数据,尽量使用for in ...

  8. essential c++ 第一章 array及vector相关使用

    将对象初始化: 1.用等号(=)赋值运算符初始化,针对对象是内置类型或者对象可以单一值初始化 2.构造函数初始化,针对对象需要多个初始值的情况 单括号括住的字符表示字符常量(‘ ’): 第一个反斜线表 ...

  9. 提升vector性能的几个技巧

    原文:https://www.sohu.com/a/120595688_465979 Vector 就像是 C++ STL 容器的瑞士军刀.Bjarne Stoutsoup 有一句话 – “一般情况下 ...

随机推荐

  1. PowerDesigner生成sql及HTML格式数据库文档

    一.PowerDesigner生成sql问题 生成sql的方法是 Database -->Generate Database (Ctrl + G ) 但是提示 Could not load VB ...

  2. NS 802.11函数分析(一)

    recv函数有两个作用,不仅是接收其他节点发送的包,而且当节点接收到其他包的时候也会调用recv() 首先给出NS2中recv的源码,和一些注释: void Mac802_11::recv(Packe ...

  3. maven项目Tomcat controller 404

    今天使用tomcat7.0.54启动现有的maven项目,可以正常启动,但是自己所写的所有的@controller注解的请求都报出了404的错误,在网上查了好久也很少找到这个问题,各种方法都尝试了也没 ...

  4. POJ 2114 Boatherds 树分治

    Boatherds     Description Boatherds Inc. is a sailing company operating in the country of Trabantust ...

  5. python最简单的http服务器

    人生苦短,我用python 今天有个需求就是简单的把自己的图片通过web共享,自然就想起了使用服务器了,在python下使用一个简单的服务器是非常方便的,用到标准库里面的SimpleHTTPServe ...

  6. DataTables - 问题集

    1.增加额外搜索条件 var reqData = {}; var extraSearch = []; var oTable = $('table selector').dataTable({ 'aja ...

  7. Android ListView滑动过程中图片显示重复错乱闪烁问题解决

    最新内容建议直接访问原文:Android ListView滑动过程中图片显示重复错乱闪烁问题解决 主要分析Android ListView滚动过程中图片显示重复.错乱.闪烁的原因及解决方法,顺带提及L ...

  8. JQuery学习之遍历

    1.祖先:向上遍历DOM树 **parent():返回被选中元素的直接父元素,该方法只会向上一级对DOM树进行遍历 $(document).ready(function(){ $("span ...

  9. AngularJS 包含HTML文件

    类似于python tornado的include方法,同样是可以在一个html文件中加载另外一个html文件,这样可以不用重复的写一些几乎不改变的代码. 首先创建两个文件,然后代码如下: <! ...

  10. 1.ARC和非ARC文件共存

    1.ARC和非ARC文件共存 项目->Build Parses->对应的类 1.1.新项目兼容老的非ARC:-fno-objc-arc 1.2.老项目兼容ARC:-fobjc-arc