先是解决了一下侦听的遗留问题,然后进入正题,数组的使用。
1、数组的实例化。
var tarray:Array = new Array( 5 ) ; // 含有5个空位置的数组,数组长度为5,元素为 undefined 。
var tarray:Array = new Array( 5,6 ) ; // 含有2个元素的数组,数组长度为2,元素为 5,6。
var tarray:Array = [4,6,3]; // 一维数组。
var tarray:Array = [[4,6,3],[6,7,8],[9,2,5]]; // 二维数组。
将上面的二维数组换成行列的形式来看:
var tarray:Array = [[4,6,3],
[6,7,8],
[9,2,5]];
所以二维数组所谓的行号和列号,其实仍旧是数组的索引下标而已。
2、多维数组的访问,经常需要多重循环语句来配合,例如下面的代码。
var t :Array = new Array(3);
for(var i:int = 0;i< t.length ;i++){
t[i] = new Array(4);
}
for( i = 0;i< t.length;i++){
for(var j:int = 0; j< t[i].length ;j++){
var mc:Sprite = new Sprite();
addChild( mc );
mc.x = j* 20 + 50;
mc.y = i * 20 + 50;
mc.graphics.beginFill(0xff0000);
mc.graphics.drawCircle(0,0,8);
mc.graphics.endFill()
mc.addEventListener( MouseEvent.CLICK, onClick);
t[i][j] = mc;
}
}
function onClick(evt:MouseEvent){
trace( evt.target.x,evt.target.y);
}
在这段代码中,利用二重循环对数组进行赋值的操作,同时复习了一下侦听的用法,通过侦听处理函数中的参数,可以访问到当前发生事件的对象,用起来非常的方便。
回复Comments
作者:
{commentrecontent}