Java集合框架

集合

Java集合框架_第1张图片

单列集合(Collection)

单列集合Collection的两个子接口List和Set
List集合的特点是元素有序、元素可重复。
Set集合的特点是元素无序并且不可重复。(这里有序是指元素的存储位置有序,不是指元素的大小有序。)
根接口Collection中定义了一些公共的方法:
Java集合框架_第2张图片

List集合

List不但继承了Collection接口中的全部方法,还增加了一些根据元素位置索引来操作集合的特有方法。
Java集合框架_第3张图片

(1)ArrayList

①可变长度
在ArrayList内部封装了一个数组对象,初始长度的缺省值为10。当数组存满元素后,ArrayList会在内存中分配一个更大的新数组替换原来的旧数组,并将旧数组的元素重新存入新数组,因此可以将ArrayList集合看作一个长度可变的数组;
②顺序存储,支持随机访问,查询效率高,插入删除不方便
ArrayList集合的使用一个数组来保存元素。在删除元素时,会将被删除元素之后的元素都向前移一个位置以填补空位;用add(int index, Object element)方法添加元素时,是把元素插入index指向的位置,需要把该位置的元素以及后续元素都向后移一个位置,如果超出数组的容量,会创建更大的新数组。因为添加和删除元素会导致大量的内存操作,所以效率低,但ArrayList集合允许通过索引随机的访问元素,查询效率高。

(2)LinkedList

删除和添加元素比较方便,但是不支持随机访问
Java集合框架_第4张图片

Iterator接口

双列集合(Map)

你可能感兴趣的:(java)