`
邱铁军
  • 浏览: 42618 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

AS3中的数组的自我理解

阅读更多
1:对于java,c#用户强调的是,as3中的数组是以非零整数的稀疏数组(sparse array),不要求所有元素的统一类型,不支持类型化数组(typed array),这点跟其他编程语言有很大的区别,可以体现出as3语言的方便性。

2:as3中的数组的长度不是创建好就固定不变的,数组的长度可以随着成员的增删变化
例如:package 
{
import flash.display.Sprite;
/**
* ...
* @author qiutiejun
*/
public class Test extends Sprite
{

public function Test()
{
var foo:Array = ["qiu", "tie", "jun"];
trace(foo.length);
foo.length = 5;
trace(foo);
//输出可以看出,多了2个差数。
//使用超过leng的索引来设定元素
foo[7] = "qiutiejun";
trace(foo);
foo.length = 3;
trace(foo);
}

}

}
可以体现出as3语言的强大地方
3:按照索引值进行查找时,需要注意的是,目标值跟原有值必须符合===全等操作,否则输出为false,既类型必须一样。
4;在数组当中删除一个或者多个元素,使用灵活多变的splice:一般有以下四中用途。
1从数组某位置开始,删除指定数目的元素,并插入一些新元素,这是标准用法:用法格式如下:
数组。splice(删除点索引,要删除元素数目,新元素1,新元素2,新元素3。。。新元素N);需要注意的是,删除点的索引可以是负值,表示数组从尾部倒数的位置。比如:索引为-3,是数组倒数第三个元素,索引为-1,是倒数第一个元素。
2:删除数组中某位置之后几个元素。
数组。splice(删除点的索引,要删除的元素数目);
3:删除数组中某位置之后的所有元素
数组。splice(删除点索引);
4:在数组中某位置之后,插入新元素
数组。splice(删除点索引,0,新元素1,新元素2.。。新元素N);
splice有返回值,是一个数组,就是要删除的那些元素。另外要记住,splice改变了远数组中的内容,如果只是想得到数组中的一些元素,而不像该表远数组。那么请使用slice方法。
例如:
//splice用法
var booklist:Array = ["b1", "b2", "b3", "b4", "b5"];
//用法1,从索引为2的元素开始删除2个元素,在添加3个元素,并且输出删除的元素
trace(booklist.splice(2, 2, "nb1", "nb2", "nb3"));
trace(booklist);
//用法2 从索引为1的元素开始删除2个元素
booklist.splice(1, 2);
//用法3,删除数组中某位置之后的所有元素
booklist.splice(2);
//用法4,在数组中某位置添加元素
booklist.splice(2,0,"l1","l2");
5:slice的用法
slice可以获取数组中一段连续的元素,而不改变原数组。同样slice使用起点索引,跟终点索引获取数组,终点索引同样可以为负值。
例如:数组。slice(起点索引,终点索引);
数组。slice(起点索引);

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics