Iterator 和Iterable 接口
Collection 接口作为集合框架的顶级接口之一,继承于Iterable 接口
public interface Collection<E> extends Iterable<E>
Iterable 接口
Iterable 接口用于引入可遍历的功能,要求接口的具体实现类必须提供Iterator 的实现
Iterator 接口
编程使用
实现类
ArrayList 底层数据结构就是数组,随机查询速度快、增删慢,线程不安全的,效率高,允许存放重复元素
LinkedList 底层数据结构是双向链表,查询慢、增删快,线程不安全的,效率高,允许存放重复元素
Vector 底层数据结构是数组,随机查询速度快、增删慢,线程安全,效率低,允许存放重复元素
ArrayList 实现类
ArrayList 是实现了List 接口的可扩容的数组【System.arrayCopy】,它的内部是基于数组实现的,相较于Java中的数组,容量能动态增长
Vector 实现类
内部实现仍旧是采用数组的方式实现,但是大部分方法上都有synchronized 同步约束,所以当前类是一个线程安全的类
LinkedList 实现类
LinkedList 底层的数据结构是基于双向链表的结构