图 10-1
显示了 Java
集合框架的主要接口,以及另外一个 Iterable
--它不在框架中,但是它是一个重要的附件。其目的如下:
-
Iterable
定义了一个类必须满足的实例才能与foreach
语句一起使用。框架接口具有以下目的: -
集合包含除地图之外的任何集合所需的核心功能。它没有直接的具体实现;具体收集类也都实现其子接口之一。
Set
是一个集合,没有重复,顺序不重要。SortedSet
会自动对元素进行排序并按顺序返回它们。NavigableSet
对此进行了扩展,添加了一些方法来查找与目标元素最接近的匹配项。 -
队列是一个集合,旨在接受尾部的元素进行处理,并按其处理顺序在头部生成它们。它的子接口
Deque
通过允许在头部和尾部添加或去除元素来扩展它。Queue
和Deque
分别具有子接口BlockingQueue
和BlockingDeque
,它们支持并发访问,并允许线程无限期地或最长时间地被阻塞,直到执行所请求的操作。 -
列表是一个集合,其顺序很重要,可容纳重复的元素。
-
Map
是一个使用键值关联来存储和检索元素的集合。它由ConcurrentMap
进行了扩展,它提供了对并发访问的支持,由SortedMap
进行扩展,它保证以递增键 顺序返回其值,通过Navigable-Map
扩展SortedMap
查找与目标元素最接近的匹配项,以及通过扩展ConcurrentMap
和NavigableMap
的ConcurrentNavigableMap
。
图 10-1
。 Java
集合框架的主要接口
第 12
章到第 16
章将依次关注每个集合框架接口。首先,虽然在第 11
章中,我们需要介绍贯穿整个框架设计的一些初步想法。