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

Flash动画基础
巧用XML做多语言界面的FLASH
Flash页面如何通过校验
在Dreamweaver中为插入的Flash添加透明
Flash 8 少为人知的特性
“SWFText”让Flash文字动起来
制作Flash声音的压缩与效果处理
实例详解AS代码完成Flash补间动画
谈Flash脚本与时间轴动作的执行顺序
Silverlight初级教程-库教程
全面掌握Flash 按钮教程
Flash格斗动画的动作设计和动作的制作
卸载Flash插件的方法
Flash CS4新功能介绍
控制Flash8里的flvs视频播放停止
Flash教程:全面掌握按钮相关内容
造成Flash动画文件增大原因与解决的方法
SWFObject最实用的功能
安装配置Flex3 SDK用来开发Flash10
Flash教程:如何简单使用钢笔铅笔
无法安装flash player该如何解决?

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 67 ::
收藏到网摘: 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