public class ChainedTable
extends java.lang.Object
ChainedTable
is a chained hash table.
The implementation isn't given here since it is an assignment in a typical
data structures class. In general,
programs should use java.util.HashTable
rather than this ChainedTable.
Outline of Java Source Code for this class:
http://www.cs.colorado.edu/~main/edu/colorado/collections/ChainedTable.java
Constructor and Description |
---|
ChainedTable(int tableSize)
Initialize an empty ChainedTable with a specified table size.
|
Modifier and Type | Method and Description |
---|---|
boolean |
containsKey(java.lang.Object key)
Determines whether a specified key is in this ChainedTable.
|
java.lang.Object |
get(java.lang.Object key)
Retrieves an object for a specified key.
|
java.lang.Object |
put(java.lang.Object key,
java.lang.Object element)
Add a new element to this ChainedTable, using the specified key.
|
java.lang.Object |
remove(java.lang.Object key)
Removes an object for a specified key.
|
public ChainedTable(int tableSize)
tableSize
- the table size for this new chained hash table
Precondition:
tableSize \> 0
Postcondition:
This ChainedTable is empty and has the specified table size.java.lang.OutOfMemoryError
- Indicates insufficient memory for the specified table size.java.lang.IllegalArgumentException
- Indicates that tableSize is not positive.public boolean containsKey(java.lang.Object key)
key
- the non-null key to look for
Precondition:
key
cannot be null.true
(if this ChainedTable contains an object with the specified
key); false
otherwise. Note that key.equals( )
is used to compare the key
to the keys that are in the
ChainedTable.java.lang.NullPointerException
- Indicates that key
is null.public java.lang.Object get(java.lang.Object key)
key
- the non-null key to look for
Precondition:
key
cannot be null.key
(if this
ChainedTable contains an such an object); null otherwise. Note that
key.equals( )
is used to compare the key
to the keys that are in the ChainedTable.java.lang.NullPointerException
- Indicates that key
is null.public java.lang.Object put(java.lang.Object key, java.lang.Object element)
key
- the non-null key to use for the new elementelement
- the new element that's being added to this ChainedTable
Precondition:
Neither key
nor element
is null.key
,
then that object is replaced by element
, and the return
value is a reference to the replaced object. Otherwise, the new
element
is added with the specified key
and the return value is null.java.lang.NullPointerException
- Indicates that key
or element
is null.public java.lang.Object remove(java.lang.Object key)
key
- the non-null key to look for
Precondition:
key
cannot be null.key
, then that
object has been removed from this ChainedTable and a copy of the removed object
is returned; otherwise, this ChainedTable is unchanged and the null reference
is returned. Note that
key.equals( )
is used to compare the key
to the keys that are in the ChainedTable.java.lang.NullPointerException
- Indicates that key
is null.