当前位置: 首页 > 图文教程 > Flash动画 > Flash动画基础 > Flash Player 10新特性:Vector

Flash动画基础
flash作为桌面的技巧
漂亮的Flash动画也能作桌面背景
Flash基础教程:初学者应用的Flash工具
Flash基础教程:学Flash的技巧
Flash AIR的安装和简单使用
Flash基础:了解动画基础知识
网页中插入透明Flash的方法和技巧
网页中Flash激活限制的处理方法
Flash 播放器的安全性设置
Flash制作动画时的一些常用命令
Swf2Gif快速将flash动画变成GIF格式
理解Flash中的level层级关系
如何把fla文件输出成和swf一样的gif文件
Flash技巧:位图矢量化和简化矢量图
禁止SWF文件显示在IE缓存
将swf文件转成可自动播放的exe文件
Flash中如何调用exe可执行文件?
Flash开发规范
网站中运用Flash技术的优点和缺点
阅读swf动画格式文件的简单指导

Flash动画基础 中的 Flash Player 10新特性:Vector


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 68 ::
收藏到网摘: n/a

在Flash Player 10之前,对于一个数组内的元素,我们是无法控制其类型的,也无法现在数组的长度,因为它可以自动增长,事实上,自动增长是会损失性能的,因为它需要动态分配内存地址。

FP10中增加了一个新的对象:Vector,它解决了上面的两个问题:

强类型
声明一个Vector对象你必须指定具体的类型:

  1. var v:Vector.<String>;  

这里指定了一个强制的类型:String, 不能加入其他类型的元素到这个Vector中,比如:

  1. v[0] = 3.14;  

这是不被允许的。

固定长度
你可以在构造函数中定于这个Vector的长度(也可以不定义)和设置是否为固定长度:

  1. new Vector.<String>(length, fixed);  

从测试看,Vector比Array在运算上快将近一倍:

  1. var i : uint;   
  2. var t : uint;   
  3. var length : uint = 1000000;   
  4.   
  5. //test Vector   
  6. t = getTimer();   
  7.   
  8. var v:Vector. = new Vector.(length, true);   
  9. for( i = 0; i < length; i ++ )   
  10. {   
  11.     v[i] = "1";   
  12. }   
  13.   
  14. trace(getTimer() - t);   
  15.   
  16. //test Array   
  17. t = getTimer();   
  18.   
  19. var a:Array = new Array();   
  20. for( i = 0; i < length; i ++ )   
  21. {   
  22.     a[i] = "1";   
  23. }   
  24.   
  25. trace(getTimer() - t);  

本文参考文档:http://help.adobe.com/en_US/AS3LCR/Flash_10.0/Vector.html

PS.感谢Mark提供 AS3 Syntax Highlighting