`

关于flash数组Array的表现形式和ArrayCollectiond的区别

阅读更多
在AS3中,数组Array有两种表现方法:
第一种方法,代码如下:
我们这里是用flex来编的。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init();">
<mx:Script>
	<![CDATA[

		private var a:Array=["a1","a2","a3"];
		private var b:Array=["b1","b2","b3"];
		private var c:Array=["c1","c2","c3"];
		private var myarray:Array=[a,b,c];

		private function init():void{
			trace (myarray);
		}
	]]>
</mx:Script>
	
</mx:Application>

第二种方法,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init();">
<mx:Script>
	<![CDATA[
		private var a:Array=new Array("a1","a2","a3");
		private var b:Array=new Array("b1","b2","b3");
		private var c:Array=new Array("c1","c2","c3");
		private var myarray:Array=new Array(a,b,c);

		private function init():void{
			trace (myarray);
		}
	]]>
</mx:Script>
	
</mx:Application>


也就是说我们可以直接new array()出对象,也可以直接用[]赋值;
上面的这两种输出方法结果都是:a1,a2,a3,b1,b2,b3,c1,c2,c3
如果我们把函数init()改为如下:
		private function init():void{
			trace (myarray[0]);
		}

输出结果为a1,a2,a3,同样,其他的我们可以自己试验一下。

ArrayCollectiond其实可以理解为一个集合,有空再细讲。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics