您的位置:首页 > 其它

AS3效率优化:使用Vector数据类型

2012-01-30 16:07 435 查看
Vector 比数组更严格,内部的元素数据类型都一致。
Vector内部访问会经过类型检查。
所以比Array性能更快。

注意:Vector.<T>的值必须是连续的,就是说Vector不可以跨越赋值,例如:
_vector[0] = xxx;
_vector[2] = xxx;
是不允许的,必须在两句之间插入_vector[1] = null;


Vector.<T>可以固定长度。

只要将fixed属性设为true即可。fixed后任何对超出length的赋值或者更改length的行为都会引发错误。

Vector是密集型的数组,每一个索引必须有值(可以为null)
由于这些特殊性,Vector便拥有以下几点优势:



性能:使用 Vector 实例时的组元素的访问和迭代速度比使用 Array 时的要快很多。

类型安全性:在严格模式下,编译器可以识别数据类型错误。
(但当使用
push()
方法或
unshift()
方法向 Vector 添加值时,编译器不会检查参数的数据类型,而是在运行时检查)

可靠性:相对于 Array,运行时范围检查(或定长检查)极大地提高了可靠性。



对于追求效率的RIA应用,使用Vector来提升效率是一种简单却行之有效的办法,

1:Vector的长度应当固定。虽然默认是不固定的,可以改变长度。

2:Vector存储基元数据类型,才能充分体现其优势

使用Vector非常的简单,和使用数组非常相似。事实上,Vector类包含了数组里所有的方法。主要的不同之处在于你怎样去实例化它。

参数(长度,长度固定:Boolean=false )

谨记,一旦fixed属性被设置为true,你就不能用Vector的其他方法来改变它的长度,比如pop(), push(), shift()等等。

//var VARIABLENAME:Vector.<vectortype> = new Vector.<vectortype>(size,fixed);

var vector:Vector.<int> = new Vector.<int>();

指定长度

var size:int = 7;

var vector:Vector.<int> = new Vector.<int>(size);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐