WEB开发网
开发学院图形图像Flash Flash新手入门教程:AS入门第五课_数组 阅读

Flash新手入门教程:AS入门第五课_数组

 2008-10-27 19:18:34 来源:WEB开发网   
核心提示: 在前面介绍变量时,我们说将内存分成无数个房间,用来存放数据.每个房间中只能住一个数据,比如房间中原来住着5,后来8又住进这个房间,于是一脚将5踢了出去.现在可能有这种情况,就是8住进来后,不把5踢出去,两个合租.事实上这也是允许的,这种情况就被称为数组.在房间中的各个成员被称为元素, 这一些元素的数据类型不一定是相同

  在前面介绍变量时,我们说将内存分成无数个房间,用来存放数据.每个房间中只能住一个数据,比如房间中原来住着5,后来8又住进这个房间,于是一脚将5踢了出去.现在可能有这种情况,就是8住进来后,不把5踢出去,两个合租.事实上这也是允许的,这种情况就被称为数组.在房间中的各个成员被称为元素, 这一些元素的数据类型不一定是相同的.也就是说在现在开放的年代,男女合租是允许的.比如在房间中又住进去a,它是字符与前面的5、8数字的数据类型就不相同.房间中每个元素都有一个编号,我们在引用这些元素时,只需用编号就行.就如在监狱中的囚犯一样,你叫道:3365出来.于是号数为3365的囚犯出来了.咋一不小心就将数组中的元素整进监狱了呢?需要注意的是,数组中的元素编号是从0开始的.比如上面我们建的数组,5是0号、8是1号、a是2号.

创建数组:可以用下列格式创建数组

格式一:

var
数组名:Array=new Array(元素1,元素2,……)
格式二: var
数组名:Array=new Array();

数组名[0]=值;

数组名[1]=值;


例:我们上面建的数组,这样写

var myarray:Array=new Array(5,8,a);
或:
var myarray:Array=new Array();

myarray[0]=5;

myarray[1]=8;

myarray[2]="a";

数组元素的引用 创建数组后,就可以引用其元素了,格式为:

数组名称[元素编号];
比如要引用上述数组第一个元素的值就可以这样写:
myarray[0]
可以测试一下下面这段代码:

var myarray:Array=new Array(5,8,a);

var b=myarray[0];

trace(b);
输出应该是5.
数组是对象,即是对象,那么就有它自已的属性和方法,下面我们就来认识一下:

数组的属性:只介绍一个属性, length:这是指组数的元素的数量.如上面的数组,myarray一共有三个元素5,8,a,那么这个数组的length属性为3

例1: var myarray:Array=new Array(5,8,a);

b = myarray.length;

trace(b);

输出结果为3.

For....in循环:在上一课介绍循环语句时,说过for....in循环留到这一课来介绍.这个循环是遍历一个集合的所有对象的循环,比如遍历数组元素.就是说一个一个地方问每一个元素.数组中有几个元素它就循环几次

例2: var myarray:Array=new Array(5,8,"a");

for (var i in myarray){


b = myarray;

trace(b);

}
输出结果为:a

8

5
例3:用for循环和length属性也可以实现遍历数组:

var myarray:Array=new Array(5,8,"a")

for(var i=0;i<myarray.length;i++){


b = myarray;

trace(b);

}

输出结果为:5,8,a
可以看出,这两个循环都是将数组中的循环方问了一遍,只是结果的顺序不同.例2中应用了数组的length属性,这个属性最常用的就是用在for循环中,在以后的课程中会经常用到.

数组的方法:

concat( ):

将参数中指定的元素与数组中的元素连接,并创建新的数组。如果 value 参数指定的是数组,则连接该数组的元素而不是数组本身。
例4: var myarray:Array=new Array(5,8,"a")
myarray1 = myarray.concat("b");

for(var i in myarray1){

c = myarray1;

trace(c);


}
输出为:b

a

8

5
用myarray1 = myarray.concat("b");将b连接到myarray数组中并创建新数组myarray1.
例5: var myarray:Array=new Array(5,8,"a")

myarray1 = myarray.concat("b");

myarray2 = myarray.concat(myarray1);

for(var i in myarray2){

c = myarray1;

trace(c);


}
这时myarray2应该是:myarray2[5,8,a,5,8,a,b],这是用concat()方法将两个数组连接起来了.

1 2  下一页

Tags:Flash 新手入门 教程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接