集合类包括List集合、Set集合和Map集合,其中List与Set继承了Collection接口,Collection接口虽然不能直接被使用,但提供了操作集合以及集合中元素的方法,且Set接口和List接口都可以调用Collection接口中的方法。List集合、Set接口和Map接口提供了不同的实现类。
表1:Collection接口的常用方法及说明
方法 | 功能描述 |
---|---|
add(Object e) | 将指定的对象添加到集合内 |
remove(Object o) | 将指定的对象从集合内移除 |
isEmpty() | 返回boolean值,用于判断当前集合是否为空 |
iterator() | 返回用于遍历集合内元素的迭代器 |
size() | 返回int型值,获取当前集合中元素的个数 |
List集合
List集合包括List接口以及List接口的所有实现类。List集合中的元素允许重复,且各元素的顺序就是添加元素的顺序。类似Java数组,用户可以通过索引(元素在集合中的位置)访问集合中的元素。
List接口
表2:List接口的两个重要方法
方法 | 功能描述 |
---|---|
get(int index) | 获得指定索引位置上的元素 |
set(int index,Object obj) | 将集合中指定索引位置的对象修改为指定的对象 |
List接口的实现类
因为LIst接口不能直接被实例化,所以Java提供了List接口的实现类,其中最常用的实现类是ArrayList类与LinkedList类。
- ArrayList以数组的形式保存集合中的元素,能够根据索引位置随机且快速地访问集合中元素。
- LinkedList以链表结构 (是一种数据结构)保存集合中的元素,随机访问集合中的元素性能较差,但向集合中插入元素和删除集合中元素的性能出色。
在Java7以前,使用ArrayList类创建元素类型为String的LIst集合对象的正确写法是“List list = new ArrayList();”,但由于Java7提出了“菱形语法”,使得“List list = new ArrayList<>();”这种写法变成了可能,并不会引起编译器报错。