as3Array(数组)的操作 as3 array sort

记得以前学FLASH的时候,同事就告诉过我,数组和字符串是比较重要的基础的部分,必须要完全掌握。现在记录下来,以观后效。 创建数组: var aa:Array =[1,3,5,7,9];//数字型数组 var aa:Array =["a","b","c","d","e","f"];//字符串型数组 链接数组:concat () varaa:Array = new Array(1, 2, 3); var bb:Array = newArray("a", "b", "c"); var aaAndbb:Array =aa.concat(bb); var bbAndaa:Array =bb.concat(aa); trace(aa); //1,2,3 trace(bb); //a,b,c trace(aaAndbb); //1,2,3,a,b,c trace(bbAndaa); //a,b,c,1,2,3
在数组最后一项添加一个或者多个元素:push() var aa:Array= [1,2,3]; aa.push(4,5,6) trace(aa)//输出1,2,3,4,5,6
在数组第一项后添加一个或者多个元素:unshift() var aa:Array =[1,2,3]; aa.unshift(4,5,6); trace(aa)//输出4,5,6,1,2,3
删除数组中的最后一个元素:pop() varaa:Array = [1,2,3]; aa.pop(); trace(aa)//输出1,2
删除数组中第一个元素:shift() varaa:Array = [1,2,3]; aa.shift(); trace(aa)//输出2,3 trace(aa[0])//输出2,注意第一个元素已经变为0
as3Array(数组)的操作 as3 array sort
返回由原始数组中某一范围的元素构成的新数组,而不修改原始数组。返回的数组包括startIndex 元素以及从其开始到 endIndex元素(但不包括该元素)的所有元素。如果您没有传递任何参数,则创建原始数组的一个副本:slice()var aa:Array = newArray("a", "b", "c", "d", "e", "f"); var bb:Array =aa.slice(1,3);
trace(aa); // a,b,c,d,e,ftrace(bb); // b,c 下面是调用 slice()方法(对元素 2 (c)),从而得到一个数组,其中包含元素[c,d,e,f]。 varaa:Array = new Array("a", "b", "c", "d", "e", "f"); var bb:Array =aa.slice(2);
trace(aa); // a,b,c,d,e,f trace(bb); //c,d,e,f 调用slice() 方法(对倒数第二个元素 (e)),从而得到一个数组,其中包含元素[c,d,e,f]。 varaa:Array = new Array("a", "b", "c", "d", "e", "f"); var bb:Array =aa.slice(-2);
trace(aa); // a,b,c,d,e,f trace(bb); // e,f
给数组添加元素以及从数组中删除元素。此方法会修改数组但不制作副本:splice()var aa:Array = newArray("spinach","green pepper","cilantro","onion","avocado"); var bb:Array =aa.splice(2, 2); trace(aa); //spinach,green pepper,avocado trace(bb); // cilantro,onion
aa.splice(1, 0,bb); trace(aa); //spinach,cilantro,onion,green pepper,avocado
反转数组顺序:reverse() varaa:Array = [1,2,3]; aa.reverse(); trace(aa);//输出3,2,1
将数组中的元素转换为字符串、在元素间插入指定的分隔符、连接这些元素然后返回结果字符串:join() varaa:Array = new Array("one", "two", "three"); var bb:String =aa.join(" _ "); trace(aa); //one,two,three trace(bb); // one _ two_ three
使用全等运算符 (===)搜索数组中的项,并返回项的索引位置:indexOf() varaa:Array = new Array(123,45,6789); aa.push("123-45-6789");//向数组aa添加123-45-6789 aa.push("987-65-4321");//向数组aa添加987-65-4321 var bb:int =aa.indexOf("123");//在数组aa中搜索字符串123 trace(bb); // -1数组中没有字符串123,所以输出-1 var cc:int =aa.indexOf(123); trace(cc); // 0数组中第一项为int型的123,所以会输出第一项的索引0
搜索数组中的项(从最后一项开始向前搜索),并使用全等运算符(===) 返回匹配项的索引位置:lashIndexOf() varaa:Array = new Array(123,45,6789,123,984,323,123,32); var bb:int =aa.indexOf(123); trace(bb); // 0 var cc:int =aa.lastIndexOf(123); trace(cc); // 6输出的是从最后一项开始查询到的123,但索引值是6,因此输出了6.但我们看到数组中有3个123,因此,如果我们想都输出的话,要怎么办呢?我们用下面的循环遍历来解决for(var i:int;i<aa.length; i++){if(aa[i]==123){trace(i)//输出0 3 6} }
对数组中的元素进行排序: sort() varaa:Array = [7,3,32,64,96,13,42]; aa.sort(); trace(aa);//输出13,3,32,42,64,7,96sort()方法排列方法如下[此数组满足了第四条方法]:var aa:Array =[7,3,32,64,96,13,42]; aa.sort(Array.NUMERIC); trace(aa);//输出3,7,13,32,42,64,96 上面的输出,同时解决了取出数组中的最大值和最小值了。 trace(aa[0])//输出最小值3 trace(aa[aa.length-1])//输出最大值96
根据数组中的一个或多个字段对数组中的元素进行排序:sortOn()var records:Array = newArray(); records.push({name1:"john", city:"omaha", zip:68144});records.push({name1:"john",city:"kansas city", zip:72345});records.push({name1:"bob",city:"omaha", zip:94010});trace(records);
for(vari:uint = 0; i < records.length; i++) {trace(records[i].name1 + ", " +records[i].city); } //输出: //john, omaha //john, kansas city // bob,omaha
trace("records.sortOn('name','city');");records.sortOn(["name","city"]); for(varj:uint = 0; j < records.length; j++) {trace(records[j].name1 + ", " + records[j].city); } //Results: // bob,omaha //john, kansas city //john, omaha
trace("records.sortOn('city','name1');");records.sortOn(["city","name1"]); for(vark:uint = 0; k < records.length; k++) {trace(records[k].name1 + ", " +records[k].city); } //Results: //john, kansas city // bob,omaha //john, omaha 随机输出数组中的一项 varaa:Array = ["a","b","c","d","e","f"]; var i:int =Math.floor(Math.random()*aa.length) trace(aa[i])

  

爱华网本文地址 » http://www.413yy.cn/a/25101013/187938.html

更多阅读

C#的动态数组 c 动态数组的用法

在使用数组的过程中,有时候希望数组的长度和元素个数能随程序的运行不断改变,但改变一次就要重新开辟一个新的数组对象,这样将占用内存空间。为了解决这个问题,Microsoft.NET Framework 体统了一个ArrayList类,专门用于处理可按动态增减

引用与指针有什么区别 指向数组的指针

引用与指针有什么区别?首先,引用必须被初始化,指针不必。其次,引用不可以为空,但指针可以为空。引用是对象的别名,引用为空——对象都不存在,怎么可能有别名!故定义一个引用的时候,必须初始化。其次, 引用初始化以后不能被改变,指针可以改变所

声明:《as3Array(数组)的操作 as3 array sort》为网友魅力男士分享!如侵犯到您的合法权益请联系我们删除