java中ArrayList

来源:互联网 发布:java 转义字符 处理 编辑:程序博客网 时间:2024/05/21 12:40

ArrayList类实现了List接口,List接口是Collection接口的子接口,主要增加了根据索引取得对象的方法。

 

ArrayList使用数组实现List接口,所以对于快速随即取得对象来说,可以得到很好的效能。不过在删除对象或插入对象时特别是在ArrayList前端插入或删除对象时,其内部数组中的后边对象要依次挪位,代价比较大。就比较慢(使用LinkedList在这个方面比较好)。

 

数组和数组列表之间有着很大的区别。数组是Java语言的一个特征,对于每个元素类型T,都有数组类型T[];然而,ArrayList类是个定义java.util包中的类库,这是一个存放object类型元素的"普通性"的类型。注意,要从数组列表中提取元素时,需要进行类型转换。

 

add()方法可以向数组列表中添加新元素:

List list=new ArrayList();

list.add(new Element(......));

list.add(new Element(......));

ArrayList类管理了一个Object引用的内部数组,而且可能会用完数组的空间。如果调用了add,而内部数组已经满了,数组列表将自动创建了一个更大的数组,并自动把小数组中的对象拷贝到大数组中。

 

set()方法可以设置数组列表中的元素值:

 list.set(i,new Element(......));

 

get()方法可以得到数组列表的元素,返回的类型是object。

Element e=(Element)list.get(i);

 

size()方法可以得到当前ArrayList的长度。

list.size();