The Java Collections Framework hierarchy consists of two distinct interface trees:
Collection
interface, which provides for the basic functionality used by all collections, such as add
and remove
methods. Its subinterfaces — Set
, List
, and Queue
— provide for more specialized collections.
The Set
interface does not allow duplicate elements. This can be useful for storing collections such as a deck of cards or student records. The Set
interface has a subinterface, SortedSet
, that provides for ordering of elements in the set.
The List
interface provides for an ordered collection, for situations in which you need precise control over where each element is inserted. You can retrieve elements from a List
by their exact position.
The Queue
interface enables additional insertion, extraction, and inspection operations. Elements in a Queue
are typically ordered in on a FIFO basis.
Map
interface, which maps keys and values similar to a Hashtable
.
Map
's subinterface, SortedMap
, maintains its key-value pairs in ascending order or in an order specified by a Comparator
.