前提了解:java集合框架是把接口与实现分离的,以方便开发者自定义集合类(显然不太现实)。通过一系列的接口规范,衍生出了许多我们使用频繁的类。在这一系列文章里,我们将跟着接口->实现的步骤展开,慢慢学习java集合框架,使我们能够竖立起整体概念,同时进行稍微深入的探究,以便我们正确理解和使用java框架。
下面是集合框架的接口体系:(后面逐步讲解下各接口)

Iterable:其主要是要求其实现类提供一个iterator迭代器,以便它们允许对象成为“for-each loop”语句的目标,Collection继承该接口,所以标准集合实现类均要求提供迭代遍历的方法。
其方法主要有:
Iterator<T> iterator();//返回类型元素的迭代器
T
。
default void forEach(Consumer<?superT>action) //对每个元素执行给定操作,直到
Iterable
处理完所有元素或操作引发异常
default Spliterator<T> spliterator()//创建一个Spliterator由此描述的元素
Iterable
。
Collection:Collection 层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。JDK 不提供此接口的任何直接 实现:它提供更具体的子接口(如 Set 和 List、Queue)实现。此接口通常用来传递 collection,并在需要最大普遍性的地方操作这些 collection。包 (bag) 或多集合 (multiset)(可能包含重复元素的无序 collection)都应该直接实现此接口。
其提供了对数据的基本操作方法(查、增、删、大小,迭代):
int size();//返回集合大小
boolean contains(Object o);//判断元素是否存在
boolean add(E e);//向集合增加元素,如果成功(集合发生了改变)返回true否则返回false
boolean remove(Object o);//将集合某个元素删除,如果成功(集合发生了改变)返回true否则返回false
Iterator<E> iterator();//返回迭代器
余下方法可查看api文档。
Map(映射):将键映射到值的对象。地图不能包含重复的键; 每个键最多可以映射一个值。其规范了数据结构-映射,同时也提供了对数据操作基本方法(查、增、删、大小,迭代):(值得一提的是,他还提供了3个集合视图:键集,值集,键-值映射)
int size();//返回集合大小
V get(Object key);//返回与对象相对应的值,不存在该值返回null(值本身可以为null)
boolean containsKey(Object key);// 判断某key是否存在
boolean containsKey(Object key);// 判断某value是否存在
V put(K key, V value);//将键与对应值插入映射中,如果该键已经存在则返回旧值,否则返回null
V remove(Object key);//如果存在键,则从该映射中移除键的映射,返回此映射先前与该键关联的值,如果该键不存在返回null(如果返回null,不一定代表不存在该键,映射允许值为null)
Set<Map.Entry<K, V>> entrySet();//返回Map.Entry 对象(映射中的键/ 值对)的一个集视图(对该集合的修改也将反响到映射中(可以从这个集中删除元素,但不能不能增加元素),反之亦然)
Set<K> keySet();//返回该映射中的所有键的集视图(对该集合的修改也将反响到映射中(可以从这个集中删除元素,但不能不能增加元素),反之亦然)
Collection<V> values();//返回该映射中所有值的集视图(对该集合的修改也将反响到映射中(可以从这个集中删除元素,但不能不能增加元素),反之亦然)
java集合框架学习:总纲 就到这里了,我们可以知道java集合框架可以分为两类:一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。后面的系列里,我们将逐步往下探究,了解其实现过程。
下一篇我们将继续学习Collection的List、Set和Queue接口及其代表实现类。