大家好,我是在黑马基础班的学员。在黑马已经有半个月的时间了,个人已从离开学校后的自由散漫恢复到在学校时的正常生活规律,在紧张的学习氛围中个人总结了一些ArrayList知识点供大家参考。
ArrayList类是一个特殊的数组。它来自于System.Collections命名空间;通过添加和删除元素,就可以动态改变数组的长度。
一、优点
1)支持自动改变大小的功能
2)可以灵活的插入元素
3)可以灵活的删除元素
二、局限性
因为它是动态数组,跟一般的数组比起来,速度上差些。
三、ArrayList初始化
ArrayList有三种初始化
1)不初始化起容量 ArrayList al = new ArrayList();//默认容量为0,当数组容量满时数组会自动一当前数组容量的2倍扩容
2)初始化容量ArrayList al = new ArrayList(3);//初始容量为3
3)以一个集合或数组初始化ArrayList al = new ArrayList(a);//a为集合或数组
四、添加元素
添加元素用其自带的方法add(object value);
Insert(int index,object value)方法也可以用来将元素插入到索引处,不过其有一定的限制性,必须在数组长度以内插入数组
InsertRange(int index,ICollection c)方法同Insert()一样
五、删除元素
al.Remove(object obj);//移除数组中的obj元素
al.RemoveAt(int index);//移除索引为index的数字元素
al.RemoveRange(int indext,int count);//移除从索引index开始,移除count个元素
六、查找元素
查找元素有Contains()、IndexOf()、LastIndexOf()3中方法
al.Contains(object obj);//查找数组中是否有obj元素,存在返回true;
IndexOf()有两个重载方法 起用法如下:
1)、al.IndexOf(object obj);//从0开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,如果不存在,返回-1;
2)、al.IndexOf(object obj,int startIndex); //从startIndex开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,
3)、al.IndexOf(object obj,int startIndex,int count); 从startIndex开始想后查找count个元素,如果存在obj元素,则返回其在数组中的位置
al.LastIndexOf()方法与IndexOf()用法相同,它也有两个重载,其不同的是,LastIndexOf(obj)是查找要obj最后出现的位置 |
|