文档

Java™ 教程-Java Tutorials 中文版
接口
Trail: Collections

课程:接口

core collection interfaces (核心集合接口) 封装了不同类型的集合,如下图所示。这些接口允许独立于其表示的细节来操纵集合。核心集合接口是 Java 集合框架的基础。正如你在 下图 中所看到的,核心集合接口构成了一个层次结构。

两个接口树,一个以 Collection 开头,包括 Set,SortedSet,List 和 Queue,另一个以 Map 开头,包括 SortedMap。

核心集合接口。

Set 是一种特殊的 CollectionSortedSet 是一种特殊的 Set,依此类推。还要注意,层次结构由两个不同的树组成 — Map 不是真正的 Collection

请注意,所有核心集合接口都是泛型的。例如,这是 Collection 接口的声明。

public interface Collection<E>...

<E> 语法告诉你该接口是泛型的。声明 Collection 实例时,可以 并且应该 指定集合中包含的对象类型。指定类型允许编译器验证(在编译时)你放入集合的对象类型是否正确,从而减少运行时的错误。有关泛型类型的信息,请参阅 Generics (Updated) 课程。

当你了解如何使用这些接口时,你将了解有关 Java 集合框架的大部分知识。本章讨论有效使用接口的一般准则,包括何时使用哪个接口。你还将学习每个接口的编程习惯用法,以帮助你充分利用它。

为了保持核心集合接口的数量可管理,Java 平台不为每个集合类型的每个变体提供单独的接口。(这些变体可能包括不可变,固定大小和仅追加。)相反,每个接口中的修改操作都指定为 optional (可选) — 给定的实现可以选择不支持所有操作。如果调用了不受支持的操作,则集合将抛出 UnsupportedOperationException。实现负责记录它们支持哪些可选操作。所有 Java 平台的泛型实现都支持所有可选操作。

以下列表描述了核心集合接口:

最后两个核心集合接口只是 SetMap 的排序版本:

要了解排序接口如何维护其元素的顺序,请参阅 Object Ordering 部分。


Previous page: Previous Lesson
Next page: The Collection Interface