|
|
Interfaces |
ASortedMapis a
Mapthat maintains its entries in ascending order, sorted according to the keys' natural order, or according to a
Comparatorprovided atSortedMapcreation time. (Natural order andComparators are discussed in the section on Object Ordering.) In addition to the normalMapoperations, theMapinterface provides operations for:
- Range-view: Performs arbitrary range operations on the sorted map.
- Endpoints: Returns the first or last key in the sorted map.
- Comparator access: Returns the
Comparatorused to sort the map (if any).This interface is thepublic interface SortedMap extends Map { Comparator comparator(); SortedMap subMap(Object fromKey, Object toKey); SortedMap headMap(Object toKey); SortedMap tailMap(Object fromKey); Object first(); Object last(); }Mapanalogue ofSortedSet.
Map Operations
The operations thatSortedMapinherits fromMapbehave identically on sorted maps and normal maps with two exceptions:Although it isn't guaranteed by the interface, the
- The
Iteratorreturned by theiteratoroperation on any the sorted map'sCollection-views traverse the collections in order.- The arrays returned by the
Collection-views'toArrayoperations contains the keys, values, or entries in order.toStringmethod of theCollection-views in all the JDK'sSortedMapimplementations returns a string containing all the elements of the view, in order.Standard Constructors
By convention, allMapimplementations provide a standard constructor that takes aMap, andSortedMapimplementations are no exception. This constructor creates aSortedMapobject that orders its entries according to their keys' natural order. Additionally, by convention,SortedMapimplementations provide two other standard constructors:The first of these standard constructors is the normal way to create an empty
- One that takes a
Comparatorand returns a new (empty)SortedMapsorted according to the specifiedComparator.- One that takes a
SortedMapand returns a newSortedMapcontaining the same mappings as the givenSortedMap, and sorted according to the sameComparator(or using the elements' natural ordering, if the specifiedSortedMapdid too). Note that it is the compile-time type of the argument that determines whether this constructor is invoked in preference to the ordinaryMapconstructor, and not its runtime type!SortedMapwith an explicitComparator. The second is similar in spirit to the standardMapconstructor: It creates a copy of aSortedMapwith the same ordering, but with a programmer specified implementation type.Comparison to SortedSet
Because this interface is a preciseMapanalogue ofSortedSet, all of the idioms and code examples in theSortedSetsection apply toSortedSetwith only trivial modifications.
|
|
Contents |