1. Collection接口
    1. Collection接口是最基本的容器接口,继承至Iterable接口,允许元素重复,可以无序
    2. List接口
      1. LinkedList
        1. 底层的数据结构是链表结构
        2. 查询较慢,增删较快
      2. ArrayList
        1. 底层的数据结构使用的是数组结构
        2. 查询很快,但增删较慢
        3. 线程不同步
      3. Vector
        1. 底层是数组数据结构
        2. 线程同步
        3. 无论查询还是增删都很慢,被ArrayList替代了
    3. Set接口
      1. 不允许在其中放入重复的元素
      2. 最多只能包含一个null元素
      3. HashSet类
        1. 底层实现是基于HashMap
        2. 不保证Set的迭代顺序
        3. 不保证该顺序永久不变
  2. Map接口
    1. HashMap类
      1. 基于哈希表的Map接口实现,利用哈希算法根据hashCode()来配置存储地址
    2. TreeMap类
      1. 基于红黑树(Red-Black tree)的NavigableMap 实现。该映射根据其键的自然顺序进行排序,或者 根据创建映射时提供的Comparator 进行排序,具体取决于使用的构造方法
    3. SortedMap接口
      1. 进一步提供关于键的总体排序 的 Map
  3. 辅助工具类
    1. Collections、Arrays类
      1. 提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作
    2. Comparable
      1. Comparable用作默认的比较方式,实现了该接口的类之间可以相互进行比较,这个对象组成的集合就可以直接通过sort()进行排序了
    3. Comparator接口
      1. Comparator是设计模式中策略模式的一种应用