我们知道,数组作为一种容器,它的长度是不可变的,这就导致我们必须在使用数组前预估所需要的大小,很不方便。而接下来我们要介绍的集合也是一种容器,和数组类似,集合也必须存储一系列相同类型的元素。不过集合的长度是可变的。
之前我们熟知的 ArrayList<E>
类型就是典型的集合类型,其中E是泛型的意思,在集合中,E必须是引用对象类型。这就告诉我们,不能使用java中的基本数据类型,必须使用引用数据类型。那么如果我们就是想使用基本数据类型怎么办?当然是用包装类啦。例如我们要存储整数序列。可以这样声明ArrayList
:
ArrayList<Integer> myArr=new ArrayList<Integer>();
其他的集合也类似。
下面我们正式开始集合的学习。
集合的概述
我们学到的集合会有很多,但最常见的无非是下面几种:
Vector<E>
ArrayList<E>
LinkedList<E>
TreeSet<E>
HashSet<E>
LinkedHashSet<E>
这些集合看看起来很多,其实主要分为两大类。
一类是Vector<E> ArrayList<E> LinkedList<E>
这三种,他们都是有序的,可以存储重复元素,最关键的是:他们都有下标索引,所以可以使用for循环遍历,而且可以使用get(index)
直接访问。
这一