AS3效率优化:使用Vector数据类型
AS3, 效率优化 | 星期三, 八月 4th, 2010自FlashPlayer10伴随着FlashCS4发布时,AS3中就多了一种新的数据类型:Vector
这里先给不大熟悉Vector的同学们做一下简介(节选并改编自官方文档):
Vector是一种特殊的数组
- 首先,Vector的定义和C语言中“数组”更为接近,即数组的每一个元素都有相同的数据类型。(这就意味着对Vector中元素的访问要经过类型检查)
- 其次,Vector是一种密集数组,即每一个索引中必须包含一个值。(可以是null)
- 最后,Vector可以随时指定为固定长度的数组。
由于这些特殊性,Vector便拥有以下几点优势:
- 性能:使用 Vector 实例时的组元素的访问和迭代速度比使用 Array 时的要快很多。
- 类型安全性:在严格模式下,编译器可以识别数据类型错误。(但当使用
push()方法或unshift()方法向 Vector 添加值时,编译器不会检查参数的数据类型,而是在运行时检查)- 可靠性:相对于 Array,运行时范围检查(或定长检查)极大地提高了可靠性。
今天我们主要关注的是使用Vector数据类型来优化程序效率。
对于追求效率的RIA应用,使用Vector来提升效率是一种简单却行之有效的办法,
然而很多开发者对Vector的了解不够深入,以致未能充分发挥Vector在速度的优势。
接下来我们便来剖析一下Vector的最佳使用方法。