一.Collection集合
-
概述: 集合其实就是一种容器,可以用来存储多个引用类型的数据
-
分类: 单列集合,双列集合
-
单列集合: 以单个单个元素进行存储
-
双列集合: 以键值对的方式进行存储
-
-
集合与数组的区别:
-
长度:
-
数组长度是固定的
-
集合长度是不固定的
-
-
存储范围:
-
数组可以存储基本类型+引用类型 eg; int[],String[]
-
集合只能存储引用类型,如果要存储基本类型,需要存储基本类型对应的包装类类型 eg; ArrayList<String> ,ArrayList<Integer>
-
-
1.2单列集合常用类的继承体系
-
单列集合: 以单个单个元素进行存储
-
单列集合继承体系:
-
Collection接口是所有单列集合的根接口,也就意味着所有的单列集合都实现了Collection接口
-
List接口继承Collection接口: List集合元素有索引,元素存取有序,元素可重复
-
ArrayList类: 数组存储结构, 查询快,增删慢
-
LinkedList类: 链表存储结构,查询慢,增删快
-
......
-
-
Set接口继承Collection接口: Set集合元素没有索引 , 元素不可重复(唯一)
-
HashSet类: 哈希表结构,由哈希表保证元素唯一,元素存取无序,不可以排序
-
LinkedHashSet类:: 链表+哈希表结构,由哈希表保证元素唯一,由链表保证元素存取有序,不可以排序
-
-
TreeSet类: 二叉树结构,可以对元素进行排序
-
......
-
-
-
1.3Collection常用功能
-
Collection是接口,只能通过其子类创建对象
-
Collection是所有单列集合的顶层父接口,所以所有单列集合都拥有Collection中的方法
-
常用方法:
-
public boolean add(E e)
: 把给定的对象添加到当前集合中 。 -
public void clear()
:清空集合中所有的元素。 -
public boolean remove(E e)
: 把给定的对象在当前集合中删除。 -
public boolean contains(Object obj)
: 判断当前集合中是否包含给定的对象。 -
public boolean isEmpty()
: 判断当前集合是否为空。 -
public int size()
: 返回集合中元素的个数。 -
public Object[] toArray()
: 把集合中的元素,存储到数组中
-
二.Iterator迭代器
2.1 Iterator接口
迭代的概念
-
概述:迭代即Collection集合元素的通用获取方式。在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续再判断,如果还有就再取出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。
-
迭代的步骤:
-
获取迭代器对象
-
使用迭代器对象判断集合中是否有元素可以取出
-
如果有元素可以取出,就直接取出来该元素,如果没有元素可以取出,就结束迭代
-